230.1

基本的な手続きが一通り出ているような問題セット。取りこぼしちゃいけない。

300

n*log(n)の値が与えられるので、nを求めよ、という問題。


関数が単調増加なので、バイナリサーチするのみ。

500

パスカルの三角形の指定された行の要素のうち、指定した値で割り切れるものの数を答えよ、という問題。


割る値は高々6なので、2,3,5で何回割れるかをnCkを計算しながら覚えておくだけ。

900

a,b,cからなる文字列のa,b,cをそれぞれ指定された別のa,b,cからなる文字列に置換するという操作をN回やった後の文字列長をMで割った余りを答えよ、という問題。


各文字の数の遷移から行列を作ってN乗するだけの問題。適当にやるとlongをオーバフローするように作ってあった。アルゴリズムじゃなくて、値の大きさの見積もりがいい加減なのをどうにかしないとダメ。