Submit solution

Points: 1
Time limit: 2.0s
Memory limit: 64M

Author:
Problem type

Dobili ste posao magacionera u novom magacinu kutija! Magacin je ogroman i u njemu se nalazi n gomila kutija, u svakoj gomili su kutije poređane jedna na drugu. Međutim, neke gomile su previsoke a neke preniske, a vi volite red, pa ste rešili da prerasporedite neke kutije.

Na raspolaganju vam je viljuškar koji odjednom može da prenosi tačno k kutija (ni manje ni više). Prema tome, u jednom prebacivanju možete uzeti tačno k kutija sa neke gomile (koja ima bar k kutija) i prebaciti ih na bilo koju drugu gomilu. Želite da izvršite nekoliko prebacivanja tako da na kraju dobijete n što približnijih gomila, tj. da razlika broja kutija na najvećoj i najmanjoj gomili bude minimalna. Odredite tu razliku.

Ulaz:

(Ulazni podaci se učitavaju sa standardnog ulaza) U prvom redu ulazne datoteke nalaze se 2 prirodna broja n i k koji predstavljaju, redom, broj gomila i kapacitet viljuškara (1 ≤ n, k ≤ 106). Sledeći red sadrži n brojeva ai razdvojenih razmakom - broj kutija na odgovarajućim gomilama (1 ≤ ai ≤ 109).

Izlaz:

(Izlazni podaci se ispisuju na standardni izlaz) U prvom i jedinom redu izlazne datoteke ispisati minimalnu moguću razliku između broja kutija na najvećoj i najmanjoj gomili posle optimalnog niza prebacivanja.

Primer:

standardni ulaz      standardni izlaz
5 7
20 3 8 19 29
        
6

Objašnjenje.

Ukoliko prebacimo 7 kutija sa prve na drugu gomilu, 7 kutija sa pete na drugu i 7 kutija sa pete na treću, dobijamo gomile 13 17 15 19 15 gde je razlika između najveće i najmanje 19 - 13 = 6. Nijedan drugi niz prebacivanja ne daje manju razliku.


Comments

There are no comments at the moment.