2011-04-21から1日間の記事一覧

二分法

SRM462 div2 medium 二分検索でもよく使う方法. seek //入力 low = 0; high = 100 while(1) { int mid; mid = (low+high)/2; int calc = ...; //何らかの処理(midを仮引数に関数の戻り値を使用) if(calc > seek) { ///中間の値が大きい->high(最大値)を下げ…

配列を交互に足す 番兵の有効活用

降順に並んだ配列が二つあるとする.サイズは同じとは限らない. 配列を作るときに0を仕込んでおく。(番兵) //0入れる前にa.size(), b.size()を確定させる. a: 7 5 4 2 0 b: 8 3 1 0 //交互に足していって、stop以上になるときの最小の要素数を返す. //…