CF1025E.Colored Cubes
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Vasya passes all exams! Despite expectations, Vasya is not tired, moreover, he is ready for new challenges. However, he does not want to work too hard on difficult problems.
Vasya remembered that he has a not-so-hard puzzle: m colored cubes are placed on a chessboard of size n×n . The fact is that m≤n and all cubes have distinct colors. Each cube occupies exactly one cell. Also, there is a designated cell for each cube on the board, the puzzle is to place each cube on its place. The cubes are fragile, so in one operation you only can move one cube onto one of four neighboring by side cells, if only it is empty. Vasya wants to be careful, so each operation takes exactly one second.
Vasya used to train hard for VK Cup Final, so he can focus his attention on the puzzle for at most 3 hours, that is 10800 seconds. Help Vasya find such a sequence of operations that all cubes will be moved onto their designated places, and Vasya won't lose his attention.
输入格式
The first line contains two integers n and m ( 1≤m≤n≤50 ).
Each of the next m lines contains two integers xi , yi ( 1≤xi,yi≤n ), the initial positions of the cubes.
The next m lines describe the designated places for the cubes in the same format and order.
It is guaranteed that all initial positions are distinct and all designated places are distinct, however, it is possible that some initial positions coincide with some final positions.
输出格式
In the first line print a single integer k ( 0≤k≤10800 ) — the number of operations Vasya should make.
In each of the next k lines you should describe one operation: print four integers x1 , y1 , x2 , y2 , where x1,y1 is the position of the cube Vasya should move, and x2,y2 is the new position of the cube. The cells x1,y1 and x2,y2 should have a common side, the cell x2,y2 should be empty before the operation.
We can show that there always exists at least one solution. If there are multiple solutions, print any of them.
输入输出样例
输入#1
2 1 1 1 2 2
输出#1
2 1 1 1 2 1 2 2 2
输入#2
2 2 1 1 2 2 1 2 2 1
输出#2
2 2 2 2 1 1 1 1 2
输入#3
2 2 2 1 2 2 2 2 2 1
输出#3
4 2 1 1 1 2 2 2 1 1 1 1 2 1 2 2 2
输入#4
4 3 2 2 2 3 3 3 3 2 2 2 2 3
输出#4
9 2 2 1 2 1 2 1 1 2 3 2 2 3 3 2 3 2 2 1 2 1 1 2 1 2 1 3 1 3 1 3 2 1 2 2 2
说明/提示
In the fourth example the printed sequence of movements (shown on the picture below) is valid, but not shortest. There is a solution in 3 operations.