ABC236_D – Dance

プログラミング

ABC236_D – Dance

問題

D - Dance
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.

提出

Submission #45033827 - AtCoder Beginner Contest 236
AtCoder is a programming contest site for anyone from beginners to experts. We hold weekly programming contests online.

3回目くらいで解けた

以下、解法を書く。

全ての組み合わせを列挙する。
$1$の人とペアになる可能性がある人は$2..2N$の$15$人。
まだペアになってない人を1人選び、その人とペアになる可能性がある人は$13$人。
まだペアになってない人を1人選び、その人とペアになる可能性がある人は$11$人。

これを繰り返していくと全てのパターンが列挙できる。
初めに選ぶ「まだペアになっていない人」は誰でも良いので、最小の人にする。
そうすると、$1513×11..=2,027,025$となり間に合う。

実装が複雑になってしまった。
公式解説のようにスマートに書けるようになりたい。

コメント

タイトルとURLをコピーしました