#NC2502L. 爱胜过一切
爱胜过一切
题目描述
这是一个充满爱的社区!
社区中有 名居民,每位居民 在社区中都有一个他/她非常爱的居民 。每两个居民爱着不同的居民。居民可以爱自己。保证 是偶数。
有一天,发生了一件坏事:他们需要选择 名居民,他们将永远被禁止结婚。
为了防止将来发生这样的事情,其余的 名居民会组成 组对象结婚,每组对象由 个人组成(当然)。如果一组对象由居民 和居民 组成,而 既不爱 , 也不爱 ,那这也太怪了!因此这样的情况永远不会发生。
因此,作为婚姻规划者,您需要弄清楚如何安排这一切。您想知道不同婚姻计划的数量。两个婚姻计划是不同的,当且仅以下条件至少其一为真:
- 在一个计划中,某人 已婚,而在另一个计划中,他/她未婚。
- 在一个计划中,某人 与 结婚,而在另一个计划中,他/她没有与 结婚。
由于计划的数量可能非常多,请输出数量关于 取模的结果。
输入格式
每组测试包含多个测试用例。第一行包含测试用例的数量 。
每个测试用例由两行组成。
第一行包含 个整数 ,表示社区中的居民数量。保证 是偶数。
第二行包含 个整数 ,其中 表示居民 爱的人。保证如果 ,则 。
保证单组测试内, 不会超过 。
输出格式
2
4
1 3 4 2
6
3 4 5 6 2 1
3
9