#P15188. [SWERC 2019] Pixels
[SWERC 2019] Pixels
说明
保护野生动物的方法多种多样。其中之一是制作能够激励人们的海报,这是艺术家的工作。有些需要被激励的人是极客,因此一些艺术家专注于像素艺术。
一位艺术家准备了一幅黑白动物像素画。这些画应该显示在一个巨大的像素化矩形屏幕上,屏幕有 行(从上到下编号为 0 到 )和 列(从左到右编号为 0 到 ):你的工作就是在这种屏幕上显示画作。
初始化屏幕时,它只显示白色像素。然后,每个像素应由开关单独控制,按下像素 的开关应当改变 的颜色,从黑变白或从白变黑。然而,屏幕有缺陷:按下像素 的开关也会改变与 有公共边的那些像素的颜色,即水平或垂直相邻(但不是对角线相邻)的像素。尽管如此,通过恰当地选择按下哪些开关,即使是有缺陷的屏幕也可能显示你手中的画作。
你能设法显示那幅画吗?如果能,应该按下哪些开关的集合?
注意
注意按下开关的顺序并不重要,而且不需要按两次同一个开关。因此,一个解决方案可以完全由按下的开关集合描述。可能有多个解决方案,即多个合适的开关集合。在这种情况下,你的输出只需要表示其中一个解决方案。
输入格式
- 第一行包含两个整数 和 ,以空格分隔。
- 对于所有满足 的 ,第 行包含 个符号 “B” 或 “W”,以空格分隔:如果第 个符号()是 “B”,那么显示在第 行第 列的像素应为黑色;否则,应为白色像素。
输出格式
如果无法显示该画作,输出一行 IMPOSSIBLE。
否则,输出 行,每行包含 个字符,表示按开关的方案。每个字符应为 A(表示不按该开关)或 P(表示按下该开关)。字符之间用一个空格分隔。
如果有多种可能的方案,输出任意一种即可。
1 2
B W
IMPOSSIBLE
5 22
B B B W B W W W B W B B B W B B B B W B B B
B W W W B W W W B W B W W W B W W B W B W W
B B B W B W B W B W B B B W B B B B W B W W
W W B W B W B W B W B W W W B W B W W B W W
B B B W W B W B W W B B B W B W W B W B B B
A P P A P P A A P A A P P P A A P A P A P A
A P P A P A P P A P A P A A A A A P P P A A
A P P A P P A A A P P A A P P A A P A P A A
A A A A A A P P A P P P A A P A A P P P P A
A P A A A A P A P P P A P A P P A P P P A P
提示
样例解释 1
每当你按下一个开关时,两个像素的颜色都会改变。因此,它们总是具有相同的颜色,无法显示该画作。
样例解释 2
你可以验证,如果按下左图中红色像素对应的开关,你将得到右图所示的图案。
:::align{center}
:::
数据范围
- 。
翻译由 DeepSeek 完成
京公网安备 11011102002149号