#P9851. [ICPC 2021 Nanjing R] Secret of Tianqiu Valley
[ICPC 2021 Nanjing R] Secret of Tianqiu Valley
Description
在天穹谷遗迹的北塔中,有一些火炬谜题,旅行者荧正面临最后一个也是最难的一个。
在一个圆圈中有 个火炬,初始时有些火炬已经被点燃。对于所有 ,第 个和第 个火炬是相邻的。
为了破解这个谜题,所有的火炬都应该被点燃。在每一步中,荧可以点燃一个熄灭的火炬,并且受超自然力量影响,相邻火炬的状态将被反转。也就是说,如果相邻火炬当前是熄灭的,它将被点燃;如果当前是点燃的,它将被熄灭。
时间就是金钱,荧希望在 步内解决这个谜题,或者确定这个谜题是无法解决的。
Input Format
有多个测试用例。输入的第一行包含一个整数 ,表示测试用例的数量。对于每个测试用例:
输入的第一行包含一个整数 (),表示圆圈中火炬的数量。
第二行包含一个长度为 的二进制字符串 ()。如果 ,则第 个火炬初始时是熄灭的;如果 ,则第 个火炬初始时是点燃的。保证初始时并非所有火炬都被点燃。
还保证所有测试用例的 之和不超过 。
Output Format
如果谜题无法解决,输出 0。
否则,第一行输出一个整数 ,表示荧需要的移动次数。然后输出一行包含 个用空格分隔的整数 ,其中 表示荧将在第 次移动中点燃第 个火炬。如果有多个答案,输出任意一个。
请不要在每行的末尾输出多余的空格,否则您的解决方案可能被认为不正确!
2
5
00000
3
001
7
2 5 1 2 3 4 2
0
Hint
对于第一个样例测试用例,火炬的状态将如下变化: 。
题面翻译由 ChatGPT-4o 提供。
京公网安备 11011102002149号