C. Разрез торта
Имя входного файла: | cut.in |
Имя выходного файла: | cut.out |
Ограничение по времени: | 2 s |
Ограничение по памяти: | 256 megabytes |
У Александра сегодня гости – он отмечает день рождения. Естественно не обошлось без песен, плясок и торта. Все шло просто прекрасно и казалось, что ничто не предвещало проблем, но Нежданчик всегда появляется внезапно. Нежданчик – это друг Александра. Он большой пессимист, и всё время говорит Александру, что у него ничего не получится. Вот и сегодня он заявил, что торт не получится разделить на всех гостей так, чтобы никто не был обижен.
Теперь у Александра возникла задача: проверить, действительно ли торта не хватит. Присмотревшись к торту, он заметил, что длина у торта бесконечна, а вот ширина оставляет желать лучшего, поэтому стоит резать торт параллельными прямыми, вдоль длины торта (Александр в себе более чем уверен, поэтому считает, что он сможет разрезать торт). Но поскольку он не очень аккуратен, то его разрезы имеют ширину T.
Более формально: торт представляет из себя полосу ширины L, разрезы представляют из себя полосы ширины T. Пообщавшись с гостями, Александр получил много хороших впечатлений, а еще он узнал, что i--й гость желает отведать полоску торта шириной не менее ai. Помогите Александру определить, хватит ли торта, что бы каждому гостю выдать полоску той ширины, которую он желает?
Формат входного файла
В первой строке содержатся три целых числа 1 ≤ N ≤ 105 – количество гостей, 1 ≤ L ≤ 109 – ширина торта и 1 ≤ T ≤ 109 – ширина разреза. Во второй строке содержится N чисел 1 ≤ ai ≤ 109 – ширина куска, которую хочет i--й гость.
Формат выходного файла
Выведите "YES" (без кавычек), если разрезать торт по указаным правилам возможно и "NO" иначе.
Пример:
cut.in | cut.out |
---|---|
2 6 2 1 2 | YES |
2 3 2 1 2 | NO |