Трішки добра
Обмеження: 2 сек., 256 МіБ
«Щось сьогодні день такий хороший», — подумав Зеник та почав роздавати цукерки всім дітям. У Зеника є \(n\) пакунків із цукерками, в \(i\)-ому пакунку \(a_i\) цукерок, усі пакунки розташовані в ряд.
Усього Зеник зустрів \(k\) дітей. Кожному з них Зеник дав якийсь неперервний підвідрізок пакунків. Формально, Зеник обирає два числа \(l\), \(r\) та дарує \(a_l + a_{l+1} + \dots + a_r\) цукерок. Після цього \(l-1\)-ий та \(r+1\)-ий пакунки стають сусідніми.
Вам ж потрібно визначити, чи зможе Зеник роздати всі цукерки так, що кожна дитина отримала однакову кількість цукерок.
Вхідні дані
У першому рядку задано два цілих числа \(n\) і \(k\) — кількість пакунків та кількість дітей, яких зустрів Зеник, відповідно.
У другому рядку задано \(n\) цілих чисел \(a_i\) — кількість цукерків у \(i\)-тому пакунку.
Вихідні дані
У єдиному рядку виведіть YES, якщо Зеник зможе роздати
всі цукерки, та NO в протилежному випадку.
Обмеження
\(1 \le n \le 500\),
\(1 \le k \le n\),
\(1 \le a_i \le 10^9\).
Приклади
| Вхідні дані (stdin) | Вихідні дані (stdout) |
|---|---|
| 4 2 2 3 4 5 | YES |
| Вхідні дані (stdin) | Вихідні дані (stdout) |
|---|---|
| 4 2 2 3 5 4 | NO |
Примітки
У першому прикладі Зеник першій дитині дає 2-гу і 3-тю коробки, тоді залишаться дві коробки (2,5) і їх він віддасть 2-гій дитині. Обидвоє отримають по 7 цукерок.
| Element Type | Створено | Хто | Задача | Компілятор | Результат | Час (сек.) | Пам'ять (МіБ) | № | Дії |
|---|