2013-05-01から1ヶ月間の記事一覧

SRM577 div1 250

問題 プログラミングコンテストの部屋割りをする。 N人の登録があるとする。 Nが20で割り切れるなら、部屋数はN/20。割り切れないならN/20+1(/は、整数割り算を表す)。 レートについて降順にならべ、R人ずつ、ランダムに部屋がかぶらないように部屋を割り当…

目標

絶望的にできてないけど焦ってもしょうがないし、ゆっくり進めてく。 最終的な目標は「どんな問題でも時間内で解ける」なので、 時間がかかっても(時間内に終わらなくても)解く あとまわしはよくないかもしれない 問題を読んだ日からあまり開けずに解く わか…

SRM580 div1 250

問題 上流からうなぎが流れてくる。 うなぎiは、長さがl[i]で、最初に-t[i]にいて、原点方向へ向かって流れてくる。 すべてのうなぎは1単位時間に1だけ動く。 ある時刻で、原点に来たすべてのうなぎを捕まえることができるが、2回までしかその行為を行えない…

SRM579 div1 450

問題 店がN個あり、0からインデクスがふってある。 0〜M-1の店に興味があり、そこで商品を買いたい(1度だけ購入することができる)。 興味のあるお店については、開店時間、閉店時間、買い物にかかる時間が与えられる。 また、いくつかの店間には道があり、そ…

Codeforces 305C

問題 n個の非負の整数a1,a2,...,anが与えられる。 これを2^a1,2^a2,...と書き直して総和を求める。 これに2^b(b>=0)形式のものをいくつか加えて、その総和が2^{v}-1(vは任意)になるようにしたい。 いくつ加えればよいか。 1 0 考え方 各ビットで考えられる。…

Codeforces 305B

問題 n個まで連分数展開されたa0+1/(a1+1/...)の配列aと、分数p/qが与えられる。 この連分数展開されたものと分数p/qが等しいかどうかを返す。1 1 考え方 多倍長があれば、それを使って連分数をpp/qq形式に直して、pp*q == qq*pかどうかを判定。 または、p/q…

Codeforces 305A

問題 非負で100以下の異なる整数がいくつか与えられる。 このとき、「任意のペアが、それらの各桁について少なくとも0を含む」ようにサブセットを作る。 2つの整数を同時に、1の位、10の位、100の位で見て、どちらかが0になるようにする。サブセットは満たす…

SRM563 div1 300

問題 2つの文字列X,Yを考えたとき、前方からどちらかを選んぶことを続けてマージした文字列Sを考える。 ここで、YはXを並び替えたものとすると、Sが与えられたとき、Xとしてありうる文字列の辞書順最小を答える。 考え方 一文字ずつ残りが可能かどうかチェッ…

SRM579 div1 250

問題 テキストエディターを操作している。 結果表示画面、テキストバッファ画面、アンドゥ履歴画面から構成される。 今、結果表示画面に表示したいテキストが与えられる。 1行単位で処理していくとき、テキストバッファに入力し、エンターを押すことで結果表…

SRM564 Div1 500

問題 赤玉がr個、緑玉がg個、青玉がb個あり、以下のルールを上から順に繰り返す。 ・赤玉が残っていれば、赤玉を1つ取り除く ・緑玉が残っていれば、緑玉を1つ取り除く ・青玉が残っていれば、青玉を1つ取り除くしかし、合計数r+g+b=n個だったこととk回目に…

SRM564 Div1 250

問題 w*hのチェスボード上をチェスのナイトが動く。 ナイトツアーとは、任意の場所からスタートし、スタート地点に戻ってくる経路のことを言う。 ここで、同じ場所は何度も通ってよい。 ナイトサーキットのサイズとは、1度でも訪れたチェスのマスのuniq数を…

GCJ 2013 R1C B.Pogo

問題 (0,0)から(X,Y)まで移動する。 各ターンで、上下左右に動けるが、iターン目にはiだけ移動する。移動方法をNSEWを並べた文字列で返す。 考え方 (0,0)から(X,Y)までtターンで移動できるかどうかを考える。 移動するための条件として、 1+2+...+t >= abs(X…

GCJ 2013 R1C A.Consonants

問題 アルファベットの文字列Sと整数nが与えられる。 長さLは、0 考え方 dp的に考える。文字列の0〜iまでの、求めたい個数をdp[i]とする。この値を求めたい。 dp[i-1]がすでに計算されているとして、今考えなければいけない文字列は、 部分文字列0〜i、1〜i…

GCJ 2013 Round1C

通過できませんでした。日頃のサボりが如実に表れています。。 Aだけ解いた。

GCJ 2013 Round1A A.Bullseye

問題 白黒の円を交互に描きたい。 同心円で、半径rの白い円の外に半径1の黒い丸を描き、その外に半径1の白い丸、その外側に半径1の黒い丸、のように描いていく。 白い円は今回描く必要はなく、黒い丸を描いていきたい。 今、tミリリットルの墨があり、1ミリ…

GCJ 2013 Round1B C.Garbled Email

問題 文字列Sが与えられる。 これは、元の英文からスペースが取り除かれ、いくつかの文字が別の文字に代わってしまっている文で、別な文字に置き換わっているものは、隣接する4文字以下には置き換わっている文字がないことが保障される。 例として、 元の文…

GCJ 2013 Round1B

通過してない。 AとC-smallだけ通した。