2011-09-14から1日間の記事一覧

bool型を扱うときに注意すること

主にC++でbool型を扱うときに注意することを覚えているうちに書いておく。 まず、当たり前のことから。 assert( sizeof(bool) == 1); bool hoge; assert( sizeof(hoge) == 1); const int N = 10; assert( sizeof(bool[N]) == N ); bool piyo[N]; assert( siz…

SRM 383 500pt: FloorBoards

問題概要 H*W(H,W 考えたこと 何か最大流の匂いがするような。 でもサイズ小さいし、ビットDP? コストの計算に上の列の情報がいるから前の列と今の列で2重にビットを回すのか。 計算量がH*2^(2*W)*Wでちょっと多い。2^20 * 100を計算すると10^8。ギリギリ間…

SRM 383 250pt: Planks

問題概要 長さL[i]( 考えたこと いつも基本は全探索。長さをいくつに揃えるかを固定したら利益の計算がO(N)位でできそう。 何本作れるかは単純に割り算。何回切る必要があるかは割り算のceil-1で出せる。 サンプルの最後のケースが親切過ぎる。木によっては…