atcoder#AGC059C. [AGC059C] Guessing Permutation for as Long as Possible
[AGC059C] Guessing Permutation for as Long as Possible
配点 : 点
問題文
先生が の順列 を隠し持っています。 これから、あなたはこの順列を特定します。
そのために、あなたは整数のペアの列 $(A_1,B_1),(A_2,B_2),\ldots,(A_{N(N-1)/2},B_{N(N-1)/2})$ を用意しました。これは、 () という形のすべてのペアを並べ替えたものです。 今から、あなたはこれらのペアを先頭から検査します。ペア に対しては、$P_{A_i} であるかを尋ね、先生が答えを教えます。 ただし、この質問への答えがそれ以前の答えから特定できる場合は、この質問を省略します。
このアルゴリズムで 個の質問がすべてされるような順列 の個数を で割った余りを求めてください。
制約
- ()
- 入力中のすべての値は整数である。
入力
入力は標準入力から以下の形式で与えられる。
出力
答えを出力せよ。
2
1 2
2
明らかに、どの順列 に対しても、質問を一つする必要があります。
4
1 2
1 3
2 3
2 4
3 4
1 4
4
例として、 を考えます。 この場合、二問目までで と を知って と特定できるため、三問目を省略します。 従って、 は数えません。
5
1 2
2 3
3 4
4 5
1 5
1 3
2 4
3 5
1 4
2 5
0