Codeforces Round #358 (Div.2)
はい。
http://codeforces.com/contest/682
A. Alyona and Numbers
ざっくりと大意
・1<=x<=n, 1<=y<=m でxとyの和で5で割り切れるようなものがいくつあるか。
Python2
n,m=map(int,raw_input().split()) ans=chk=0 l=[] for i in range(1,n+1): ans+=(m-(5-(i%5)))/5+1 print ans
前にヴァーチャルで練習した時に ans+=(i+m)/5-i/5 で計算してた形跡があるけど、なんでコレで合ってる、思いついたのかさっぱりわからん。。。今回は余りが0から4の時によって適当に計算しました。
B. Alyona and Mex
ざっくりと大意
・Alyonaに長さnの数列aを与えた。Alyonaはその中の数を幾つかを選んで減算することが出来る。
・Alyonaは減算を何回もするかもしれないし、1回もしないかもしれない?
・それらの処理をしたあとの数列bに現れない、作れない最小の数はいくつか??
・サンプル1の1 3 3 3 6では3を減算して2を作り、6を減算して4が作れる。現れない最小の数は5となる。
Python2
n=int(raw_input()) l=map(int,raw_input().split()) ans=chk=0 l.sort() for i in l: if i>chk: chk+=1 print chk+1
ソートしてなんとなく終端まで加算すると数列bの最大値が求まって、それより1大きいのが解になるイメージ。