Codeforces

118D - Caesars Legions

問題 シーザーは兵士を整列させるのが大好きで、n1人の歩兵とn2人の騎兵を所有しています。彼にはこだわりがあって、k1人より多く歩兵が連続して並んでいたり、k2人より多く騎兵が連続して並んでいるのは、美しくない並び方だと思っています。n1,n2,k1,k2が…

9C - Hexadecimal's Numbers

問題 自然数nが与えられる。各桁が0と1だけで表される数が、1からnの範囲にいくつあるか答えよ。(n 解法 2進表記を10進数とみなした数を作って比較する。 コード int tob(int n){ int b = 0; stack<int> stk; while(n){ stk.push(n%2); n/=2; } while(!stk.empty(</int>…

58B - Coins

問題 バーランド国は新しい硬貨を作ろうと考えた。その硬貨は、それよりも安いすべての硬貨で割り切れるものでなくてはならない。一番高い硬貨の値が与えられるので、なるべく硬貨の数が多くなるように硬貨を構成せよ。 解法 1になるまで、割れる素数で割っ…

131C - The World is a Theatre

問題 n人の男と、m人の女がいる。t人の選び方が何通りあるか求めよ。ただし、t人の中に少なくとも4人の男と1人の女が含まなければならない。(n,m 解法 combinationを使って計算。 コード int main(){ ll comb[50][50]; REP(i,50)comb[i][0] = comb[i][i] = 1…

codeforces #83 div2

A time = hours * 60 + minutes に変換する。 int rev(int n){ return (n/10)+10*(n%10); } int main(){ int time,h,m; scanf("%d:%d",&h,&m); time = 60*h+m; while(true){ time = (time+1)%(24*60); h = time/60; m = time%60; if(rev(h)==m){ printf("%02…

codeforces #38

些細なミスでE問題を落としてしまったのが悲しい。 配列のサイズには気をつける。 E問題 ボールがn個あって、それぞれについてx座標とピンを刺すコストcが与えられる。ピンが刺さっているボールはその場で動かず、刺さってないボールは、自分の左にあるピン…

codeforces #35 div2

PM4時から始まった#35とその後7時からの#36の両方に参加しましたが、#35は1問、#36に至っては0問という散々な結果だったので、#35についてだけ。 http://www.codeforces.com/contest/35 入出力がいつもと違いファイル形式だったので、それに手間取って時間…