시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 128 MB537222.222%

문제

흰색 퀸과 두 검정색 킹이 100×100크기의 체스 판에 있다. 흰색과 검정색은 서로 턴을 번갈아 가면서 움직인다. 흰색 퀸이 먼저 움직인다. 검정색 킹의 턴에서는 두 검정 킹 중 하나만 움직인다.

퀸의 위치와 두 킹의 위치가 주어질 때, 두 킹 중 하나를 잡기 위해 필요한 퀸 움직임의 최솟값을 구하는 프로그램을 작성하시오. 킹은 퀸을 잡을 수 없으며, 퀸의 위치로 움직일 수도 없다.

검정 편은 가능하면 늦게 잡히려고 노력할 것이다. 킹은 상하좌우, 대각선 8방향으로 한 칸씩 이동할 수 있고, 퀸은 8방향으로 원하는 칸만큼 이동할 수 있다. 퀸이 킹이 있는 칸으로 이동하는 것이 킹을 잡는 것이고, 양 편 모두 턴을 건너 뛸 수 없으며, 체스 판을 벗어날 수 없다.

입력

첫째 줄에 퀸의 위치, 둘째 줄과 셋째 줄에 킹의 위치가 주어진다. 모든 위치는 “행 열”과 같은 형식을 주어진다. (가장 왼쪽 위에 있는 칸이 (0, 0)이고, 가장 오른족 아래에 있는 칸이 (99, 99)이다. 퀸과 킹, 또는 두 킹이 같은 위치에 있는 경우는 없다.

출력

첫째 줄에 킹을 잡기 위한 퀸의 움직임의 최솟값을 출력한다.

예제 입력 1

0 0
99 0
0 99

예제 출력 1

1

예제 입력 2

98 98
0 97
99 0

예제 출력 2

2

예제 입력 3

16 35
53 36
23 40

예제 출력 3

3

예제 입력 4

22 53
95 64
30 76

예제 출력 4

4

출처