Educational Codeforces Round 13
はい。
http://codeforces.com/contest/678
A. Johny Likes Numbers
ざっくりと大意
・nより大きくてkで割り切れる最小の数はいくつか。
Python2
n,k=map(int,raw_input().split()) print n-n%k+k
nからkで割ったときの余りを引いて(もし割り切れて余り0でも可)、kを足せばnより大きくkで割り切れる最小の数になるはず。
B. The Same Calendar
ざっくりと大意
・カレンダーが全く同じになる次の年はいくつか。
Python2
import calendar n=int(raw_input()) def sol(n): a=calendar.monthcalendar(n,1)[0][-1] b=calendar.monthcalendar(n,3)[0][-1] for i in range(1,10000): p=calendar.monthcalendar(n+i,1)[0][-1] q=calendar.monthcalendar(n+i,3)[0][-1] if a==p and b==q: return i print sol(n%2000+2000)+n
初回提出はcalendar使うだけで楽勝だと思ってたら西暦ウン万年とかでエラーに。。。一定周期でループしてるし無理やり小さくすればいいだろうということで%2000+2000で強引にclarendar使える範囲にして計算した。けどこれは通常年なら〜、うるう年なら〜、でいくつずれるかを計算するものだったらしい。。