e-olymp
Competitions

Ukrainian Olympiad in Informatics, II Stage, I Round

B. Дмитро і пляшки

У Дмитра є $n$ пластикових пляшок, кожна з яких вміщує рівно $k$ літрів води. $i$-та пляшка заповнена водою на $a_i$ літрів. Нещодавно Дмитро дізнався про шкоду пластика довкіллю, тому він хоче здати як можна більше пляшок на переробку. Для цього йому потрібно всю воду з цих пляшок перелити в інші, так, щоб жодна пляшка не була переповнена (у $i$-ій пляшці після переливань має міститись не більше, ніж $k$ літрів). При цьому хлопець лінивий, тому він хоче перелити як можна менше води. Допоможіть Дмитру знайти мінімальну кількість пляшок, яких вистачить для того, щоб перелити всю воду в них, а також мінімальну кількість літрів води, яку для цього потрібно перелити. Зверніть увагу, що рідину з однієї пляшки можна розподіляти між декількома іншими. Тобто, необов'язково переливати всю воду з однієї пляшки в якусь одну. \InputFile Перший рядок містить два цілі числа $n$ та $k$ ($1 \leq n \leq 10^5$, $1 \leq k \leq 10^4$)~--- загальна кількість пляшок та максимальний об'єм кожної з них. Другий рядок містить $n$ цілих чисел $a_1, a_2, \ldots, a_n$ ($0 \leq a_i \leq k$) --- кількість літрів води у пляшках. \OutputFile В єдиному рядку виведіть два цілі числа --- кількість пляшок, яких вистачить для того, щоб перелити всю воду в них, а також мінімальну кількість літрів, які для цього потрібно перелити. \Note У першому прикладі можна перелити всю воду з $5$-ї пляшки у $3$-ю, а з $1$-ї --- у $6$-у. У другому прикладі знадобляться всі $5$ пляшок, тому переливати нічого не потрібно. У третьому прикладі можна вибрати будь-яку пляшку й попереливати з неї по $1$ літру в усі інші.
Time limit 1 second
Memory limit 256 MiB
Input example #1
6 5
1 5 3 0 2 4
Output example #1
3 3
Input example #2
5 8
6 8 7 5 8
Output example #2
5 0
Input example #3
6 6
5 5 5 5 5 5
Output example #3
5 5
Source Ukrainian Olympiad in Informatics 2021, II Stage, I Round