점심
시간 제한1초메모리 제한1024 MB
길이 n인 늪에서 잎 n장에 한 번씩만 내려앉아 s에서 f까지 가는 경로를 찾고, 거리 1로 뛰는 횟수의 최솟값을 구합니다.
문제
늪은 길이가 인 좁은 길이며, 크기가 인 부유 잎이 번부터 번까지 번호순으로 깔려 있다. 각 잎 위에는 파리가 한 마리씩 앉아 있다. 처음에 두꺼비 Kvait가 한 잎 위에 있으며, 지금 점심을 먹으려고 한다.
Kvait는 바로 옆 잎(거리 )이나 그 옆 잎을 뛰어넘은 잎(거리 )으로 양방향 어느 쪽으로든 뛸 수 있다. 잎에 내려앉을 때마다 그 잎의 파리를 먹는다. 잎은 불안정해서 Kvait가 뛰어나가면 그 잎은 가라앉아 다시 쓸 수 없다.
Kvait는 잎 에서 출발해 잎 에서 끝나면서 모든 파리를 먹어야 한다. 바로 옆 잎으로 뛰는 것이 한 잎을 건너뛰는 것보다 더 많은 에너지를 쓴다. 에너지를 최소로 쓰도록 이동을 계획하라.
입력
첫 줄에 세 정수 , , (, )가 주어진다. 각각 잎의 개수, 출발 잎 번호, 도착 잎 번호이다.
출력
Kvait가 모든 파리를 먹는 데 필요한 바로 옆 잎으로의 최소 점프 횟수를 출력한다. 불가능하면 을 출력한다.