544.1

配点詐称。

275

ある投票を行った結果を四捨五入した百分率表記が与えられる。投票を行った人数の総和として可能なものの最小値を答えよ、という問題。


下から順に投票者数を探索。各百分率表記になる範囲を覚えておいて、総数がそれに合致するかを評価してやる。適当なところで打ち切る。

500

二次元のバイナリ配列を左上の点と右下の点を結ぶ最短路で分割し、下側のみフリップする。この操作を行って、全部を0にするには何回の操作が必要か答えよ、という問題。


できるだけ右上の点をクリアして回るのが目的になるので、それを愚直に繰り返すだけ。

900

原点にx軸向きに一個ある。進行方向にS倍に、右向きにR倍に、左向きにL倍に個数を増やすという操作をN回やる。最終的に座標(x,y)にあるものの価値をx*yとして、その総和を求めよ、という問題。


ステップ数が異常に大きいので、式立てて行列乗算する。前進した場合の以降の動作は、N-1ステップ移動するのにくらべて、全員x方向に一個進む。他のは向きが変わる。というのをうまいこと必要な情報だけ残して状態に埋め込んで式を立てればよろしいとのこと...。