Masala #FPDJPBKPYG

Xotira 64 MB Vaqt 1000 ms
14

Ustunlar

N ta ustunlar mavjud bo'lib, ular bir-birining yonma-yon joylashgan. Ustunlar 1 dan \(N\) gacha raqamlangan. Har bir ustunning balandligi \(Hᵢ\) bilan berilgan.

Ismoil birinchi ustundan kuchi \(S\) bilan boshlaydi. U N-chi ustunga yetib borishi kerak.

Ismoil quyidagi harakatlardan birini tanlashi mumkin:

  • Kuchini 1 ga kamaytirib, balandlikni \(B\) ga oshirish. Bu harakatni faqat kuchi 0 bo'lmagan holda amalga oshirish mumkin.
  • Bir ustundan keyingi ustunga ko'chish va balandlikni o'zgartirmasdan ko'chish. Biroq, ko'chish uchun joriy ustunning balandligi kelgusi ustunning balandligidan yuqori yoki teng bo'lishi kerak.

Ismoil ning maqsadi: oxirgi ustungaga (N-chi) yetib borish. U ushbu harakatlardan birini bir necha marta takrorlash orqali bu maqsadga erishishi mumkin.


Kiruvchi ma'lumotlar:

Birinchi qatorda 3 butun son N, S, B lar beriladi.  \((1 ≤ N ≤ 2*10^5, 1 ≤ S ≤ 10^3, 1 ≤ B ≤ 10^9)\)

Bu \(N\) ta ustunlarning soni, \(S\) kuchining boshlang'ich qiymati va \(B\) balandlikni oshirish miqdori.

Ikkinchi qatorda \(N\) ta butun son \(H₁, H₂, ..., Hₙ\) \((0 ≤ Hᵢ ≤ 10^9)\) beriladi. Bu ustunlarning balandliklarini ifodalaydi.


Chiquvchi ma'lumotlar:

Agar yetib bora olsa “Yes”, aks holda “No” ni chop eting.


Misollar
# input.txt output.txt
1
3 3 12
0 10 30
Yes
2
4 1 100
0 100 200 0
No
3
10 5 1
1 0 0 0 0 0 0 0 0 7
No