今日の1:00からありました。
ox-
250 Zoo
猫と兎のグループがある。各動物に対して、であなたより身長の高いあなたと同じ種類の動物は何匹居ますか?と聞いて、みんな正しく答えてくれる。
答えリストが与えられる。各動物が兎であるか猫であるかは分からない。
それぞれを、猫か兎かどちらかに仮定した場合に、成り立つ場合が何通りあるかを数えろ。
とりあえず猫が何匹いるかを仮定する。(同時に兎の数は{answers.size()-猫の数}で決まる。)
そして匹数をそれぞれ仮定した上で、それが成り立つケースは何通りあるか数える。
変な場合わけは一切していないというかifを使っていないので通ったらしい。
class Zoo { public: long long theCount(vector <int> answers) { long long ans = 0; map<long long,long long> w; for(int i = 0 ; i < answers.size() ; i++){ w[answers[i]]++; } for(int cat = 0 ; cat <= answers.size() ; cat++){ map<ll,ll> m = w; long long res = 1; for(int i = 0 ; i < cat ; i++){ res *= m[i]>0?m[i]:0; m[i]--; } for(int i = 0 ; i < answers.size()-cat ; i++){ res *= m[i]>0?m[i]:0; m[i]--; } ans += res; } return ans; } };
500 FiveHundredEleven
落ちた。
Fox Ciel と Toastman が以下のゲームを遊んでいる。
1.512未満の整数リストが与えられる。あと0に初期化されたメモリがある。
2.交互に整数を取っていき、{メモリ|=その値}とし更新していく。
3.整数を取れなくなるか、メモリを511にしてしまった方が負け。
適当にdpしたけどやっぱり嘘解法でした・・・。
1000 らいふげーむ?
よんでない。
Challenge
なんか250が落とされまくっている。
500はひとつ明らかにTLEするだろっていうソースがあったけど、下手したら一瞬で終わってしまいそうだったので、慎重になっていたところ取られて悲しくなる。
結局±0Pt.
System Test
250が通って500が落ちる。
Result
ox- 211.53
313位 / 932人 (Room内4位)
1294→1389(+95)
前落としたのを少し取り戻せた感。
そうそう、そういえば、うちの学校から2人Contestantが増えました。refiuteとdragonexです。うれしいです。