
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
AtCoder ABC244 D - Swap Hats を3通りの方法で解く : 転置数, 乱択 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
AtCoder ABC244 D - Swap Hats を3通りの方法で解く : 転置数, 乱択 - Qiita
https://atcoder.jp/contests/abc244/tasks/abc244_d 以下の3つの方法で解きます 全列挙で考察 転置数 ... https://atcoder.jp/contests/abc244/tasks/abc244_d 以下の3つの方法で解きます 全列挙で考察 転置数 乱択 1:全列挙で考察 R,G,Bの並び替えは6つしかないです。以下の解説のように図を書いて考えます。 https://atcoder.jp/contests/abc244/editorial/3594 コードは割愛します。(解説に書いてある通りです。 長さがNだとするとハッシュをO(N)でとれるとして 時間計算量はO(N) 空間計算量はO(N!)と極めて大きな数になります 2:転置数 これも上記の解説に書いてある通りです。ある1,2,3,4,...,nという数列が昇順で並んでいた時、異なるi, jを選んでswapするとその転置数は奇数になります。もう一度、適当なswapをすると転置数は偶数になります。 今回の場合、操作の回数が十分なので、偶