마라톤 2

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

농장의 젖소가 건강하지 않다고 생각한 농부 존은 젖소를 위한 마라톤 대회를 열었다. 존이 가장 아끼는 젖소 베시도 이 대회에 참가한다.

마라톤 코스는 체크포인트 NN개로 이루어져 있다. 1번 체크포인트에서 출발해 번호 순서대로 모든 체크포인트를 방문한 뒤 NN번 체크포인트에서 끝나야 마라톤이 끝난다. 게으른 베시는 대회에 나가되 중간에 있는 체크포인트를 최대 KK개까지 몰래 건너뛸 수 있다. 단, 1번 체크포인트와 NN번 체크포인트를 건너뛰면 너무 눈치가 보이니 이 두 체크포인트는 건너뛰지 않을 생각이다.

베시가 체크포인트를 최대 KK개 건너뛰면서 달린다면, 달려야 하는 최소 거리는 얼마일까?

대회는 도심 한복판에서 열리기 때문에 거리는 택시 거리(맨해튼 거리)로 계산한다. 즉 (x1,y1)(x_1, y_1)(x2,y2)(x_2, y_2) 사이의 거리는 x1x2+y1y2|x_1 - x_2| + |y_1 - y_2|다. (x|x|는 절댓값 기호다.)

입력

첫째 줄에 체크포인트의 수 NN과 건너뛸 수 있는 체크포인트의 수 KK가 주어진다. (3N5003 \le N \le 500, 0K<N0 \le K < N)

이후 NN개의 줄에 정수가 두 개씩 주어진다. ii번째 줄의 첫 번째 정수는 체크포인트 iixx 좌표, 두 번째 정수는 yy 좌표다. (1000x1000-1000 \le x \le 1000, 1000y1000-1000 \le y \le 1000)

서로 다른 체크포인트의 좌표는 겹칠 수도 있다. 베시가 체크포인트 하나를 건너뛸 때는 그 번호의 체크포인트만 건너뛰며, 같은 좌표에 있는 다른 체크포인트까지 건너뛰지는 않는다.

출력

베시가 체크포인트를 최대 KK개 건너뛰고 달릴 수 있는 최소 거리를 출력한다.

힌트

첫 번째 예제에서 베시가 2번과 4번 체크포인트를 건너뛰면 경로는 (0,0)(0, 0), (1,1)(1, 1), (2,2)(2, 2) 순서가 되어 거리가 4다. 이보다 짧게 달릴 수는 없다.