Зменшення масиву#257

Зменшення масиву

5 секунд
512 мегабайтів
Складна

Дано масив , який складається з цілих чисел. За одну операцію можна вибрати позицію (1 \leq i \leq n), зменшити a_i на та збільшити значення всіх інших елементів a_j (1 \leq j \leq n, i \neq j) на .

Знайдіть мінімальну кількість операцій, за яку можна зробити так, щоб всі елементи масиву стали меншими або рівними нулю (тобто недодатними), або повідомте, що це зробити неможливо.

Вхідні дані

Перший рядок містить три цілі числа , , (1 \leq n \leq 10^6, 0 \leq k, t \leq 10^9) — довжину масиву та параметри операцій.

Другий рядок містить цілих чисел a_1, a_2, \ldots, a_n (-10^{18} \leq a_i \leq 10^9) — початкові значення елементів масиву.

Вихідні дані

Виведіть одне ціле число  — мінімальну кількість операцій, за яку можна зробити так, щоб всі елементи масиву стали меншими або рівними нулю. Якщо це зробити неможливо, то виведіть .

Якщо це зробити можливо, то виведіть цілих чисел cnt_i (1 \leq i \leq n), які позначають кількість операцій, які були виконані над елементом з індексом . Зверніть увагу, що має виконуватися рівність \sum\limits_{i=1}^n cnt_i = c.

Приклади

Приклад

Loading
Loading

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading

Оцінювання

  1. ( бали) t = 0;

  2. ( бали) 1 \leq n \leq 300, 0 \leq |a_i| \leq 300, 0 \leq t \leq 10^6;

  3. ( балів) 1 \leq n \leq 3000, 0 \leq |a_i| \leq 3000, 0 \leq t \leq 10^6;

  4. ( балів) 1 \leq n \leq 10^3, 1 \leq a_i \leq 10^9, 0 \leq t \leq 10^6;

  5. ( балів) 1 \leq n \leq 10^4, 1 \leq a_i \leq 10^9;

  6. ( балів) 1 \leq n \leq 10^5, 1 \leq a_i \leq 10^9;

  7. ( балів) 1 \leq a_i \leq 10^9;

  8. ( балів) 1 \leq n \leq 10^3, 0 \leq t \leq 10^6;

  9. ( балів) 1 \leq n \leq 10^4;

  10. ( балів) 1 \leq n \leq 10^5;

  11. ( бал) без додаткових обмежень.