기차에서 졸다
시간 제한2초메모리 제한2048 MB
1번과 n번 정류장 사이를 왕복하는 기차에서 안토니오가 a번에서 b번까지 가는 동안 기차가 방향을 바꾸는 최소 횟수를 구합니다.
문제
안토니오는 Line Town을 관광하고 있다. 관광의 일부로 유명한 Line Train을 탄다. 이 기차에는 1번부터 번까지 번호가 붙은 개의 정류장이 있다. 기차는 1번 정류장에서 출발해 번호가 커지는 순서로 번 정류장까지 간다. 거기서 방향을 바꿔 번호가 작아지는 순서로 1번 정류장까지 가고, 다시 방향을 바꿔 같은 여정을 반복한다.
기차가 1번 또는 번 정류장에 도착하면 내리려는 승객이 모두 내린다. 그다음 방향을 바꾸고, 다음 정류장으로 출발하기 전에 새 승객을 태운다.
안토니오는 번 정류장에서 번 정류장으로 간다. 그는 매우 졸려서 탈 때 기차의 진행 방향을 확인하지 않는다. 그래서 반대 방향으로 가는 기차에 탈 수도 있다. 기차에 타자마자 잠이 들고, 여행 중 번 깨어난다. 깰 때마다 기차가 번 정류장과 번 정류장 사이에 있다는 것을 알아챈다. 기차가 어느 방향으로 가는지는 알 수 없다. 아직 목적지가 아니므로 곧바로 다시 잠든다.
번째로 깬 뒤 안토니오는 여행이 끝날 때까지 깨어 있기로 한다. 기차가 다음으로 번 정류장에 설 때까지 기차에 머물렀다가 그곳에서 내린다.
안토니오가 기차에 타고 있는 동안 기차가 방향을 바꾼 횟수의 최솟값을 구하라.
입력
첫째 줄에 네 정수 (), (), , (, )가 주어진다.
둘째 줄에 개의 정수가 주어진다. 번째 정수 ()는 안토니오가 번째로 깼을 때 기차가 번 정류장과 번 정류장 사이에 있었다는 뜻이다.
출력
안토니오가 기차에 타고 있는 동안 기차가 방향을 바꾼 횟수의 최솟값을 출력한다.