QR通過

どうやら通過したっぽい。
http://nya3.jp/files/gcj06qr.png
ぼくが割り当たった問題セットはSet 2。どういう問題だったかというと、

250pt カードシャッフル
m枚のカードの山に対して、n回シャッフルを行う。一回シャッフルを行ったときの、シャッフル前・シャッフル後のカード位置の対応が与えられるので、初期状態が[1, 2, ..., m]として、最終状態を返すプログラムを書け。
750pt 8ビショップ問題
最大8x8の正方形のボード上に、互いに攻撃できないような位置にビショップをk個配置する方法の組み合わせ数の下4桁を求めよ。ただし、ボード上のマスの中にはビショップが置けない場所があり、指示される。

250pt問題のほうは、あまり引っ掛けどころがなく、Sampleにさえちゃんとチェックしていれば大丈夫な問題。たったひとつのケースを処理できなくても0点になってしまうこのコンテストシステムにおいて、確実に点数が取れる問題は貴重。他のSetだと、幾何が入ってきたり、いきなりDPを持ち出さなきゃいけなかったりして大変だったみたいだ。ラッキー。
問題は750pt問題のほう。メモ再帰で解くのだけど、ボードを斜めに見るために座標系がひどいことになって、バグの嵐になった。先のエントリに書いたとおり、終了1分前にsubmit。なんとかSystem Testを通ったようでよかったよかった。

書いたソースコードを貼っておく。250pt 750pt