難易度評価

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

難易度(投票) Lv.4.0 (2票)

投票の分布
  1. Lv.10票
  2. Lv.20票
  3. Lv.30票
  4. Lv.42票
  5. Lv.50票
  6. Lv.60票
  7. Lv.70票
  8. Lv.80票
  9. Lv.90票
  10. Lv.100票

難易度の目安を見る ↗

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

外部サイトへ移動します

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

別タブで開く

Palindromic Game

作成者 mackerel38

テスター kazuppa、loop0919

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

難易度(投票) Lv.4.0 (2票)

解法のヒントになることがあります。
実行時間制限
2 秒
メモリ制限
512 MiB

解説

AA の中央でないある要素を削除できるならば、それと対称な位置にある要素も削除できる。この 22 つを削除すると、再び回文になる。

NN が偶数のとき、 Bob は Alice の削除した要素と対称な位置にある要素を削除し続けることができるので、 Bob の勝ちである。

NN が奇数のとき、 Alice が最初に AN+12A_{\frac{N+1}{2}} を削除することができれば、 NN が偶数のときと同様にすることで Alice の勝ちである。そうでなければ Bob の勝ちである。

Alice が最初に AN+12A_{\frac{N+1}{2}} を削除することができるということは、

x,y∈{A1,A2,…,AN−12}, x+y=2AN+12x, y \in \{A_1, A_2, \dots, A_{\frac{N-1}{2}}\}, ~ x + y = 2 A_{\frac{N+1}{2}}

を満たす x,yx, y が存在することと同値である。

すなわち、各 xx について条件を満たす yy が存在するかどうかをset などを用いて判定することで、全体で O(Nlog⁡N)O(N \log{N}) でこの問題を解くことができる。

ユーザー解説

ユーザー解説を書く

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