260.1

幾何は何度やっても早くプログラムできるような気がしません。汎用ライブラリを作る能力でもあればいいのかなぁ?

250

ある円の半径の2乗が与えられるので、円弧上にある格子点の数を求めよ、という問題。


ピタゴラスの定理を使って全探索するだけ。

500

1分進むのにX秒かかる時計と普通の時計がある。X秒かかる方の時計を逆さまにして、二つの時計をある時刻から同時に動かす。見た目が同じ時刻になる最初の時刻を答えよ、という問題。


ある時刻を反転すると別の時刻になる、というものをすべてのペアについて計算しておく。このとき24時を超えたり、60分を超えたりするものは除外しておくことに注意。後はそれぞれの時計で1分進むごとにそれをチェックしてやって、同じ状態が二度出てくるまで回せばおしまい。時刻として正しいかどうかをちゃんと判定できるようにするのは非常に重要。

1100

矩形と凸包の間に仕切りがある。矩形と凸包上にそれぞれ任意の点を選択したとき、二点間を結ぶ直線が仕切りに当たらない確率を求めよ、という問題。


凸包上の各部分について、仕切りに当たらない確率が計算できるので、幅による重み付けをした上で、最終的に面積で割ってやれば良い。積分しましょう、という問題の気もする。