難易度評価

難易度を1〜10段階で評価できます。投票はあとから変更・取り消しできます。

難易度(投票) 未投票 (0票)

投票の分布

まだ投票はありません。

  1. Lv.10票
  2. Lv.20票
  3. Lv.30票
  4. Lv.40票
  5. Lv.50票
  6. Lv.60票
  7. Lv.70票
  8. Lv.80票
  9. Lv.90票
  10. Lv.100票

難易度の目安を見る ↗

ログインして難易度を投票

外部サイトへ移動します

リンク先の URL を確認してから開いてください。

別タブで開く

Chord Triangle Game

作成者 loop0919

難易度(作成者設定) Lv.4

難易度(投票) 未投票 (0票)

実行時間制限
2 秒
メモリ制限
512 MiB

解説

N mod 4=2N\bmod 4=2 なら Alice、それ以外なら Bob が勝ちます。

弦で区切られた異なる領域の点を結ぶことはできないため、各領域に残る未使用の点の数を考えます。 Alice が点数 mm の領域に弦を引くと、その両側の点数は a+b=m−2a+b=m-2 となります。 Bob は片側から点を選び、その側をさらに二つの領域に分けます。

点数が 4k+24k+2 の領域がある場合、Alice は勝てます。

点数が 22 なら、その二点を結ぶだけで Bob は操作できません。 点数が 66 以上なら、Alice は両側の点数が 22 と 4k−24k-2 になるように弦を引きます。 どちらも 44 で割った余りが 22 なので、Bob がどちら側を選んでも、もう片側に同じ条件の領域が残ります。 これを繰り返すと、点数が減り続け、最後には点数 22 の領域で勝てます。

逆に、そのような領域がない場合、Bob はその状態を維持して勝てます。

Alice が弦を引いた両側の点数を a,ba,b とします。 元の点数は 44 で割った余りが 22 ではないので、a,ba,b がともに余り 22 になることはありません。 Bob は余り 22 の側があればそちらを、なければ点が残っている側を選びます。

選んだ側の点数を s≥1s\ge1 とすると、Bob は点 CC の位置を調整して、残る二領域の点数を次のようにできます。

  • s mod 4=3s\bmod4=3 なら、11 と s−2s-2。
  • それ以外なら、00 と s−1s-1。

いずれも余り 22 の領域は生じません。 したがって Bob は常に操作でき、いずれ Alice が操作できなくなります。

計算量はテストケースごとに O(1)O(1) です。

ユーザー解説

ユーザー解説を書く

ユーザー解説はまだありません。