문제
유진이는 한밭수목원에서 산책로를 정비하는 일을 하고 있다. 유진이는 성실하지만 한 가지 단점이 있는데, 바로 정해진 시간에 맞춰 풀을 베는 능력이 부족하다는 점이다. 사실 유진이는 하루에 단 한 번만 정비기를 움직인다. 1일 차에 유진이는 위치에서 시작한다. 그리고 일 차()에는 이전 위치 에서 위치까지 직선을 따라 이동하며 풀을 벤다. 이때 유진이는 항상 가로 또는 세로 방향으로만 이동한다. 즉, 이거나 이다. 또한 유진이는 매일 가로 방향 이동과 세로 방향 이동을 번갈아 가며 수행한다.
유진이의 작업 속도가 너무 느리기 때문에, 이전에 정비했던 구역의 풀이 유진이가 모든 작업을 마치기 전에 다시 자라날 수도 있다. 일 차에 베어낸 구역의 풀은 일 차에 다시 자라난다. 따라서 유진이가 이동하는 경로가 최소 일 전에 정비했던 경로와 교차한다면, 유진이는 이미 풀이 다시 자라난 지점을 다시 정비하게 된다.
유진이의 이동 경로가 풀이 이미 다시 자라난 이전 경로와 교차하는 횟수를 구하시오. 이때 교차는 "수직 교차"만 계산한다. 수직 교차란 가로 선분과 세로 선분이 만나는 점이 두 선분 모두의 끝점이 아닌 경우로 정의한다.
입력
첫째 줄에 과 가 공백으로 구분되어 주어진다. (; ; 는 짝수)
이어서 개의 줄에 걸쳐 일 차부터 일 차까지 유진이의 위치가 주어진다. 이 중 번째 줄에는 일 차의 위치를 나타내는 두 정수 와 가 공백으로 구분되어 주어진다. ()
출력
유진이가 이전에 정비하여 풀이 다시 자라난 지점을 다시 정비하게 되는 교차점의 개수를 출력한다.
예제 입력 1
7 4
0 10
10 10
10 5
3 5
3 12
6 12
6 3
예제 출력 1
1
코드를 제출하려면 로그인이 필요합니다.
로그인