#CSP1115. 量子隧穿问题(experiment)
量子隧穿问题(experiment)
题目描述
1935 年的秋天,薛定谔邀请巴甫洛夫观看他在盒子里对猫的实验。巴甫洛夫带着他的狗来了。
薛定谔有 个盒子摆成一排。有些盒子肯定包含猫,有些盒子肯定不包含猫,有些盒子可能包含也可能不包含猫。每个盒子只够容纳一只猫。每个盒子 有一个单向隧道 。如果盒子 为空,盒子 的猫可以移动到盒子 。
当一个不速之客按响门铃时,巴甫洛夫的狗立即兴奋起来,开始奔跑和吠叫。狗从盒子 开始,奔向盒子 ,依次从每个盒子旁边经过。当狗经过一个装有猫的盒子旁边时,那个盒子里的猫会受到惊吓。受惊的猫会检查该盒子的隧道,如果隧道的目标盒子是空的,则用隧道来逃跑,否则猫会留在其当前盒子里。注意,如果同一只猫移动到狗之后将要到达的盒子中,它可能会受到不止一次的惊吓。
设有 个未知的盒子,求 种每个盒子是否包含猫的初始配置中,有多少种将导致最终最后一个盒子中有一只猫。
输入格式
从 experiment.in
文件读入数据。
第一行一个整数 ,表示数据组数。
接下来 组数据,每组数据格式如下:
- 第一行一个整数 。
- 第二行一个长为 的字符串 ,只包含字符 。若 为 则盒子 包含猫,若 为 则盒子 不包含猫,若 为 则盒子 可能包含也可能不包含猫。
- 第三行 个整数 。保证 且 。
输出格式
输出到 experiment.out
文件。
行,每行一个整数,表示该组数据的答案对 取模的值。
样例
6
4
??.C
2 3 1 3
4
????
2 3 1 3
6
?.????
6 6 6 6 6 5
10
????????CC
2 3 4 5 6 7 8 9 10 9
10
C???.?C.??
9 1 8 3 9 3 5 3 1 9
10
??????????
7 10 1 6 2 2 8 3 5 1
1
2
15
256
24
480
说明/提示
对于所有数据,保证 。
子任务编号 | 特殊性质 | 分值 | |
---|---|---|---|
无 | |||
无 | |||
且 | |||
的所有字符均为 | |||
无 |
Related
In following contests: