#P1502. 保险箱

保险箱

这题没人验你们要是觉得有问题就大胆说出来,发讨论发群都可以

背景

为了庆祝EDG夺冠,mibbp决定打开他珍藏的82年拉菲可乐来庆祝,因为是珍藏的可乐所以mibbp把它放在保险箱里面,保险箱有很多个开关,他们呈现5*5的矩阵排列,只有全部打开的时候才能打开,但是这个保险箱的开关很独特,当你将一个开关改变状态的时候,他的上下左右四个开关也会跟着改变状态(开变关,关变开),比如位于矩阵(2,2)的开关原状态为关,其上下左右开关(2,1),(1,2),(2,3),(3,2)均为开,当你选择打开(2,2)的时候其上下左右所有开关便会全部关上。所以要打开保险箱需要谨慎选择打开的开关才能使所有开关打开,因为EDG夺冠mibpp太兴奋了所以希望能赶快打开保险箱,所以希望聪明的你告诉他如何才能以最小操作步数打开保险箱,并且希望你判断是否能在777步以内打开保险箱。

输入格式

第一行输入正整数 n(0<n<=100),代表数据中共有 n个待打开的保险箱初始状态。

以下若干行数据分为 n组,每组数据有 5 行,每行 5个字符(均为0,1,0表示关,1表示开)。每组数据描述了一个保险箱的初始状态。各组数据间用一个空行分隔。

输出格式

每组数据输出一个整数占一行,如果能在777步以内打开保险箱则输出你的最小操作步数,否则输出-1。

输入样例

3
00111
01011
10001
11010
11100

11101
11101
11110
11111
11111

01111
11111
11111
11111
11111

输出样例

3
2
-1