숨바꼭질 5
시간 제한0.25초메모리 제한512 MB
수빈이는 매초 X±1로 걷거나 2X로 순간이동하고, 동생은 매초 이동 거리가 1씩 늘어나는 걷기로 이동한다. 수빈이가 동생과 정확히 같은 좌표에 도달하는 최소 시간을 구하거나 불가능하면 -1을 출력한다.
문제
수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 에 있고, 동생은 점 에 있다.
수빈이는 걷거나 순간이동을 할 수 있다. 수빈이의 위치가 일 때 걷는다면 1초 후에 또는 로 이동하고, 순간이동을 하면 1초 후에 로 이동한다.
동생은 항상 걷기만 한다. 동생은 매초 이동하며 이동 거리에 가속이 붙는다. 동생이 한 번 이동하는 거리는 이전에 이동한 거리보다 1만큼 크다. 즉, 동생의 처음 위치는 이고, 1초 후 위치는 , 2초 후 위치는 , 3초 후 위치는 이다.
수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오. 동생을 찾는 위치는 정수 좌표여야 하며, 수빈이가 보다 작은 좌표나 보다 큰 좌표로 이동하는 것은 불가능하다.
입력
첫 번째 줄에 수빈이의 위치 과 동생의 위치 가 주어진다. 과 는 정수이다.
출력
수빈이가 동생을 찾는 가장 빠른 시간을 출력한다. 수빈이가 동생을 찾을 수 없거나 찾는 위치가 을 넘으면 을 출력한다.