Greedy Termite | 프로그래밍의 벗 PivotOJ
PivotOJ

Greedy Termite

시간 제한: 2000ms메모리 제한: 512MB출처: ICPC Asia Tehran Regional Contest 2019BOJ 18339
이 문제는 본문 이미지 일부가 표시되지 않습니다. 텍스트만으로 풀이가 어려울 수 있습니다.

문제

There are n wooden rods vertically placed over a horizontal line. The rods are numbered 1 through n from left to right. Each rod i (1 ⩽ i ⩽ n) is placed at position xi and has a height hi.

[이미지 1]

A termite wants to eat all the rods one by one. It starts eating from an arbitrary rod s (1 ⩽ s ⩽ n). Then, after eating a rod i, the termite selects the next rod to eat based on the following method. Among the remaining rods j, the one with maximum hj −|xi −xj| is selected. If there are ties, the one with minimum |xi −xj| is selected. If there are still ties, the left-most rod is selected.

Your task is to calculate the total (horizontal) distance traveled by the termite to eat all the rods.

입력

The first line of the input contains two space-separated integers n, the number of rods, and s, the starting rod number (1 ⩽ s ⩽ n ⩽ 100 000). The rods are described in the next n lines. On the line 1 + i (1 ⩽ i ⩽ n), the i-th rod is specified with two space-separated integers xi (|xi| ⩽ 109) and hi (1 ⩽ hi ⩽ 109). Additionally, for each i (1 ⩽ i ⩽ n − 1), xi < xi+1.

출력

You should print a single integer denoting the total distance traveled by the termite.

예제

예제 1

입력
5 3
1 3
4 8
8 2
10 4
11 1
출력
17
코드를 제출하려면 로그인하세요.