#P13042. [AGC045D] Lamps and Buttons
[AGC045D] Lamps and Buttons
题目描述
有 个编号为 到 的灯,以及 个编号为 到 的按钮。一开始,编号为 的灯是点亮的,其余的灯是熄灭的。
すぬけくん和りんごさん决定进行如下游戏:
-
首先,りんごさん生成一个 到 的排列 。该排列从 种可能中等概率随机选取。すぬけくん并不知道这个排列。
-
接下来,すぬけくん可以任意多次进行如下操作:
- 从当前点亮的灯中任选一个(如果没有点亮的灯则无法操作)。设选中的灯编号为 ,然后按下按钮 。这样,编号为 的灯的状态会被反转(如果原来点亮则变为熄灭,原来熄灭则变为点亮)。
すぬけくん始终可以知道哪些灯是点亮的。すぬけくん的胜利条件是让所有灯都点亮。如果确定无法达成目标,すぬけくん就认输。当すぬけくん采取最优策略时,他的胜率是多少?
设すぬけくん的胜率为 ,则 一定是整数。请输出 对 取模的结果。
输入格式
输入从标准输入读入,格式如下:
输出格式
设すぬけくん的胜率为 ,请输出 对 取模的结果。
输入输出样例 #1
输入 #1
3 1
输出 #1
2
输入输出样例 #2
输入 #2
3 2
输出 #2
3
输入输出样例 #3
输入 #3
8 4
输出 #3
16776
输入输出样例 #4
输入 #4
9999999 4999
输出 #4
90395416
说明/提示
限制
样例解释 1
すぬけくん首先按下按钮 。如果灯 被熄灭,则すぬけくん失败。否则,按下新点亮的灯对应的按钮。如果剩下的灯被点亮,则すぬけくん获胜。反之,如果灯 被熄灭,则すぬけくん失败。这个游戏的胜率是 ,所以输出 。