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