ELEVATOR - Thang máy

Xem dạng PDF

Gửi bài giải


Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, Pascal, Perl, PHP, PyPy, Python, Ruby, Rust, Scratch, Swift

Có ~N~ người đang đứng chờ thang máy, người thứ ~i~ muốn đi đến tằng thứ ~p_i~. Không may, chỉ có một cái thang máy, và nó có thể chứa tối đa ~K~ người, thời gian để đi từ tầng ~a~ đến ~b~ là ~|a − b|~. Ban đầu, thang máy dừng ở tầng một và mọi người đều đứng ở tầng một. Hỏi thang máy cần ít nhất bao nhiêu thời gian để ~N~ người đều tới được tầng mình muốn và thang máy quay trở lại tầng một?

Input

  • Dòng đầu tiên, chứa số nguyên dương ~N, K~;
  • Dòng tiếp theo, chứa ~N~ số nguyên ~p_i~ - tầng mà người thứ ~i~ muốn tới.

Giới hạn:

  • ~1 ≤ N, K ≤ 2000; 1 ≤ p_i ≤ 2000~.

Output

  • Gồm một dòng duy nhất,chứa số nguyên duy nhất là đáp án của bộ test.

Sample

Input #1
3 2
2 3 4
Output #1
8

Problem source: Kc97ble - Free Contest


Loading...