ichirin2501's diary

いっちりーん。

SRM447 DIV2 , SRM446 DIV2

SRM447 DIV2 250pt
与えられた仕事のコストとコンピュータの性能の値から、同時に仕事を処理できる最大の個数を求める問題。
データセットを昇順にソートさせた後で、順に比較していけば良い。


SRM447 DIV2 500pt
ナイトツアーに少し制限を入れた問題。


SRM446 DIV2 250pt
値の範囲と桁数の範囲から含まれる値の個数を数える問題。
桁数の下限と上限が分かってるのでループ開始と終了の値を予め全て用意しておくと無駄な処理が省けて速い。


SRM446 DIV2 500pt
立方体の表面でロボットを動かして最終的にどこにいるかを答える問題。
どの立方体の表面も同じ形をしているので、平面として捉えて解く。
方向転換は、現在の向きを上右下左 ( 0,1,2,3 ) と置くと、
90度右回転は (my_direction+1)&3 または (my_direction+1)%4
90度左回転は (my_direction-1)&3 または (my_direction-1)%4
向きを決める値を1からではなくて0から始めると剰余を利用したループが使える。




軽くやってみましたが、英語を読解するほうがはるかに時間を食うという、とてもじゃありませんがリアルタイムの参加は無理ですねw
あと問題文の意味がわかりにくかったりしますね…。
勘違い多発、単純に国語力がないだけかw
あと、SRM252 DIV2 500ptの問題をC++のnext_permutation()を利用した解法でも通りました。
案外多少遅い処理でも大丈夫なのかもしれませんね。




google code jam 参加しました、祭りだよーー。
A、B、C解きましたが、私の実力ではかなりぎりぎりでした。