#ATagc059c. [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})$。这是一组将所有满足 ()的整数对重新排列后的序列。接下来,你将从头开始依次检查这些对。对于每个对 ,你会询问 是否成立,老师会告诉你答案。但如果这个问题的答案可以从之前所有问题的答案中唯一确定,则跳过该问题。
请你计算,有多少个排列 ,会使得按照上述算法, 个问题全部都会被实际询问。将答案对 取模后输出。
输入格式
输入从标准输入读入,格式如下:
输出格式
输出答案。
样例 1
输入
2
1 2
输出
2
样例 2
输入
4
1 2
1 3
2 3
2 4
3 4
1 4
输出
4
样例 3
输入
5
1 2
2 3
3 4
4 5
1 5
1 3
2 4
3 5
1 4
2 5
输出
0
说明/提示
限制
- ()
- 输入中的所有值均为整数。
样例解释 1
显然,对于任意排列 ,都需要询问一次问题。
样例解释 2
以 为例。在前两次询问后,已知 且 ,由此可以确定 ,因此第三个问题可以被省略。因此, 不计入答案。
由 ChatGPT 4.1 翻译