#P2965. The Pilots Brothers' refrigerator
The Pilots Brothers' refrigerator
题目描述
游戏《飞行员兄弟:条纹大象的追随》中有一个任务,玩家需要打开一个冰箱门。冰箱门上有16个把手,每个把手有两种状态:打开(open) 或 关闭(closed)。只有当所有把手都处于打开状态时,冰箱门才会打开。这些把手排列成一个4×4的矩阵。玩家可以选择任意一个位置[i, j]
(其中1 ≤ i, j ≤4
)进行操作,但每次操作不仅会改变该位置的把手状态,还会同时改变该行i
和该列j
的所有把手的状态。
任务目标
计算并输出使冰箱门完全打开所需的最少操作次数,并给出具体的操作步骤(即每次操作的坐标[i,j]
)。
输入格式
输入包含四行,每行四个字符,分别表示初始状态下冰箱门把手的开闭情况:
+
:表示该把手处于关闭(closed) 状态。-
:表示该把手处于打开(open) 状态。
(输入保证至少有一个把手初始是关闭的。)
输出格式
- 第一行:输出一个整数
N
,表示最少需要的操作次数。 - 接下来的N行:每行输出两个整数
i
j
(用空格分隔),表示每次操作的坐标(行列编号)。如果有多个解,输出任意一个即可。
示例输入
-+--
----
----
-+--
示例输出
6
1 1
1 3
1 4
4 1
4 3
4 4
题目来源
2004年东北欧地区赛(西部赛区)