#P1521. 黑白棋游戏1(color)

黑白棋游戏1(color)

问题描述

在一个4*4的棋盘上有16个可以变换黑白颜色的格子,当我们对某一格子进行一步变色操作时,该格子及周围四个格子颜色取反,原来是黑的变白,原来是白的变黑。如下图所示:

给出一种初始状态和一种目标状态,至少需要多少步可以完成状态的变换?

输入要求:

输入为2个4*4的二进制数据,0表示白格,1表示黑格,第一个表示初始状态,第二个表示目标状态,两组数据中间空一行。

输出要求:

输出最少变换步数,若没有解,输出“No solution”

输入样例:color.in

1100
1001
0000
0101

1000
0111
0101
0110

输出样例:color.out

2