#JDC7H. 盒移位
盒移位
题目描述
在一个 的正方形箱子中,每个位置可能存在一个物块(用数字 表示其颜色)或者是空的(用 表示)。
我们可以对整个箱子进行顺时针旋转 度的操作。旋转结束后,所有物块会因为重力作用而垂直向下坠落,直到它们落到箱子底部或被其他物块支撑住为止。
从给定的初始状态开始,不断重复 “旋转 -> 下落” 的过程,计算至少需要多少次这样的完整操作,箱子才能恢复到最初的状态。或者输出 NO 表示不可能。
输入格式
每个测试文件仅有一组测试数据。
第一行一个整数 表示正方形箱子大小。
接下来 行每行 个数 表示初始状态下第 行第 列的物块颜色( 表示空)。
在每个测试文件内,保证所有测试数据的物块数量从第一列到第 列递减并已受到重力影响,且保证答案小于 。
输出格式
如果可以回到原来的状态输出 YES 然后输出一个整数,表示旋转次数,否则输出 NO。
3
0 0 0
1 0 0
2 3 0
YES
3
5
0 0 0 0 0
0 0 0 0 0
1 1 0 0 0
2 2 2 0 0
3 3 3 3 0
YES
16
样例解释

相关
在下列比赛中: