만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

피하기

시간 제한8초메모리 제한512 MB

난이도

아직 분류되지 않았습니다

정답자
아직 제출이 없습니다

문제

당신은 지금 상하좌우로 끝없이 펼쳐진 격자판의 원점 (0,0)(0, 0)에 있다. 칸의 위치는 xx좌표와 yy좌표로 나타내며, 오른쪽으로 한 칸 가면 xx가 1 늘고, 위로 한 칸 가면 yy가 1 늘어난다. 목적지인 칸 (x,y)(x, y)를 향해 가야 한다. 한 걸음에 상하좌우와 대각선을 포함한 인접한 8칸 중 어디로든 이동할 수 있다.

자, 출발하자고 생각할 수도 있지만 먼저 경고가 하나 있다. 이 격자판에는 마와리코미야(廻小宮)라는 수수께끼의 인물이 숨어 있다. 당신이 한 걸음 움직이면, 그는 방금 나아간 방향으로 한 칸 더 앞선 칸에 순식간에 이동한다. 정확히 말하면, 칸 (xs,ys)(x_s, y_s)에서 칸 (xt,yt)(x_t, y_t)로 움직이면 마와리코미야는 (xt+(xt−xs),yt+(yt−ys))(x_t + (x_t - x_s), y_t + (y_t - y_s))로 이동한다. 그의 사정거리에 들어가는 것은 위험하다. 방금 돌아 들어온 직후에는 어쩔 수 없지만, 다음에 이동할 칸이나 그 칸과 인접한 8칸 중 하나에 이미 마와리코미야가 있으면 사정거리에 들어간 것이므로 반드시 피해야 한다.

위 규칙에 따라 사정거리를 피하면서 목적지에 도달하려면 최소 몇 걸음이 필요한가? 이 최소 걸음 수를 구하는 프로그램을 작성하는 것이 과제다. 처음에는 마와리코미야가 어떤 칸에도 없으며, 첫 걸음 이후부터 위 규칙에 따라 나타난다.

첫 번째 예시에서 목적지는 (2,0)(2, 0)이다. 처음에 오른쪽 옆 칸인 (1,0)(1, 0)으로 가면 마와리코미야가 (2,0)(2, 0)에 나타나 다음 걸음에 그 칸으로 갈 수 없다. 처음에 대각선 오른쪽 위인 (1,1)(1, 1)로 가면 마와리코미야는 (2,2)(2, 2)에 가므로, (2,0)(2, 0)은 사정거리 밖이고 다음 걸음에 (2,0)(2, 0)으로 갈 수 있다.

입력

각 데이터셋은 정수 xx, yy 두 개가 한 줄에 주어진다. 이는 목적지 칸이 (x,y)(x, y)임을 뜻하며, ∣x∣,∣y∣≤109|x|, |y| \le 10^9을 만족한다. 입력의 끝은 EOF로 나타낸다. 전체 데이터셋의 수는 50을 넘지 않는다.

출력

각 데이터셋에 대해, 위 규칙에 따라 칸 (0,0)(0, 0)에서 칸 (x,y)(x, y)까지 이동하는 데 필요한 최소 걸음 수를 한 줄에 출력한다.

예제1

  1. 예제 1

    입력
    2 0
    2 2
    1 -1
    0 0
    0 -5
    173 207
    
    예상 출력
    2
    4
    1
    0
    6
    379