CodeForces #201
ABC3完+3hackで23位でした。
2182 -> 2274
初Redです。やったー、嬉しい。
・Bオープン
・解法自明だけど実装明らかに重い
・飛ばしてA
・まあ、難易度はいつも通りくらい
・A pretest passed
・B実装
・しょうもないバグでデバッグをさせられる
・さすがに睡眠時間足りなすぎて頭が寝てる
・B WA
・よく問題を見たら復元までしないといけないらしい
・だるすぎる・・・
・B pretest passed
・C読む
・「a -= a%x」ではなく「a = a%x」だと思っていて解ける気がしなくなる
・D軽く読む
・friend standingsみたら全員自分より上位で絶望する
・誤読に気づく
・単調関数っぽい
・N log N の臭いがする
・log2つつけるとつらそうで、imos法っぽいことをすれば良さそう
・C pretest passed
・残り30分で10人しか通してないDはさすがに無理そう
・hack始める
・Bのfailure linkみたいなのを考慮してないのを3つ落とす
・終了
・pretestが弱かったらしくかなり順位が上がって嬉しい
・C落ち過ぎでは・・・(部屋内で自分だけだった)
Cだけ載せとこう。
int n, a, b; int x[MX]; int d[MX*10]; int main(){ cin >> n; rep(i,n) cin >> x[i]; sort(x,x+n); n = unique(x,x+n)-x; cin >> a >> b; rep(i,MX*10) d[i] = i-1; rep(i,n) for(int j = (b+x[i]-1)/x[i]*x[i]; j <= a; j+=x[i]) mins(d[min(j+x[i]-b-1,a-b)],j-b); drep(i,a-b) mins(d[i],d[i+1]); int ans = 0; a -= b; while(a > 0){ a = d[a]; ans++; } cout << ans << endl; return 0; }