2011-12-11から1日間の記事一覧

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…