2017-12-08から1日間の記事一覧

ARC046 B - 石取り大作戦

解法 N <= Aの時 絶対に先行が勝つ N > Aの時 A > Bの時 N > A > Bであるため先攻が1個だけとる戦法をとると絶対にN > Bにできる。N <= Aになったら全部取れば良い。よって先攻が勝つ。 A < Bの時 N > B > Aである。A > Bの時と同様に考えると、後攻が絶対勝…

ARC051 C - 掛け算

解法 愚直にシミュレーションするとB≦109なのでTLEしてしまう。 操作を十分な回数行うと、一番小さい数にAをかけると一番大きな数になる状態ができる。 この状態になれば周期性を利用してとくことができる。 この状態になった時の数列が{a'}で残りの操作回数…

SRM609 div2 Med PackingBallsDiv2

解法 variety setを何個売るか決まれば、同じ色のパッケージを何個売らないといけないか決まる。 variety setを何個売るかで全探索。 コード class PackingBallsDiv2 { public: int minPacks(int R, int G, int B) { int ans = 1e9; // variety set for(int …