
Zrakoplović the penguin wants to learn how to fly!
The space in which he will learn to fly can be imagined as a cube of dimensions
Some of these unit cubes contain clouds, and some do not.
Zrakoplović is afraid of clouds, so he will learn to fly only where there are no clouds. He initially finds
himself at a position
At the moment, he is perfecting the skill of flying in directions that are parallel to one of the axes of space (i.e. in the direction of the x-axis, y-axis or z-axis), and in one wing flap he can cross at most one unit cube.
Before he decides to fly, Zrakoplović wants to know how many wing flaps he needs to get to the desired position. While he is preparing for the flight, help him answer that question.
Input Specification
The first line contains an integer
The second line contains three integers
The third line contains three integers
This is followed by
0
denotes a unit cube in which there are no clouds, and 1
denotes a unit cube in which there are
clouds.
The start and end position of Zrakoplović will not be a cloud.
Output Specification
In the first and only line, print the smallest number of wing flaps that Zrakoplović must make to reach
the desired position. If Zrakoplović cannot reach the desired position, print -1
.
Constraints
Subtask | Points | Constraints |
---|---|---|
1 | 7 | |
2 | 16 | There are no clouds. |
3 | 22 | All positions with |
4 | 25 | No additional constraints. |
Sample Input 1
2
1 1 1
1 1 2
00
10
01
00
Sample Output 1
1
Explanation for Sample 1
Zrakoplović can reach the desired position in one wing flap by moving in the direction of the
Sample Input 2
3
2 3 1
1 1 1
000
010
000
111
111
111
111
111
111
Sample Output 2
3
Explanation for Sample 2
Zrakoplović can reach the desired position in three wing flaps by first moving to position
Sample Input 3
3
2 1 1
3 2 2
000
010
110
010
001
001
101
110
000
Sample Output 3
3
Comments