Codeforces Round #804 (Div. 2)
3 өдрийн дараа |
E. Зэрэгцээ тооцоолол
хугацааны хязгаарлалт 2 секунд
санах ойн хязгаарлалт 256 мегабайт
оролт стандарт оролт
гаралт стандарт гаралт
Танд нэгэн програмын код өгөгджээ. Энэ програмд $N$ ширхэг процесс зэрэг явагдах бөгөөд $i$-р процессийн бүдүүвч код дараах байдалтай байна:
repeat n[i] times
y[i] := y
y := y[i] + 1
end repeat
Энд $y$ бол процессууд дундын хувьсагч бөгөөд бусад хувьсагчид зөвхөн тухайн процессдоо харьяалагдана. Үйлдлүүд мөр мөрөөрөө нэг үйлдэл гэж тооцогдоно. Өөрөөр хэлбэл процессийн мөрд үйлдэл хийгдэж эхэлсэн бол дунд нь тасалдах, завсар гаргана гэж байхгүй. Үүнээс бусад тохиолдолд тасалдах, завсар гарах нь боломжтой. Өөрөөр хэлбэл мөр хооронд шилжих үед өөр процессуудаас болоод хувьсагчдын утга өөрчлөгдсөн байж болох юм.
Програм ажиллахын эхэнд $y = 0$ байна. Танд $W$ болон $n_i$ ($i = 1, ..., N$) гэсэн бүхэл тоонууд өгөгдөнө. Програм ажиллаж дуусахад $y = W$ болж болох эсэхийг тодорхойлж ийм хариу гарахын тулд процессууд ямар ээлж, дарааллаар боловсруулагдахыг хэвлэнэ үү.
Оролт
Эхний мөрөнд $N$, $W$ хоёр тоо зайгаар тусгаарлагдан өгөгдөнө. $(1 ≤ N ≤ 100; -10^{9} ≤ W ≤ 10^{9})$.
Дараагийн мөрөнд $N$ ширхэг бүхэл тоо $n_i$ ($1 ≤ n_{i} ≤ 1000$) зайгаар тусгаарлагдан өгөгдөнө.
Гаралт
Эхний мөрөнд програм ажиллаад $y = W$ болох боломжтой бол "Yes", үгүй бол "No" гэж хэвлэнэ үү.
"Yes" гэж хэвлэсэн тохиолдолд, хоёр дахь мөрөнд процессуудыг боловсруулах хуваарийг зайгаар тусгаарлан хэвлэнэ үү. Илүү дэлгэрэнгүйг тэмдэглэл хэсгээс харна уу.
Орчуулсан: gmunkhbaatarmn
Жишээ тэстүүд
Оролт
1 10 11
Гаралт
No
Оролт
2 3 4 4
Гаралт
Yes 1 1 2 1 2 2 2 2 2 1 2 1 1 1 1 2
Оролт
3 6 1 2 3
Гаралт
Yes 1 1 2 2 2 2 3 3 3 3 3 3
Тэмдэглэл
Хялбарчлах үүднээс кодонд "repeat" үйлдэл байхгүй гэж үзвэл процессуудыг $1$-ээс эхлэн дугаарлаад дугаараар нь ажиллуулахад болох юм.
Жишээ нь, $(1\ 2\ 2\ 1\ 3)$ гэсэн дараалал өгөгдсөн бол, эхлээд $1$ дугаартай процесс ажиллана дараа нь $2$ дугаартай процесс хоёр удаа ажиллана, дараа нь $1$ дугаартай процесс ажиллана, тэгээд $3$ дугаартай процесс ажиллана.
Хариунд гарах жагсаалт яг $2 \cdot (n_1 + ... + n_N)$ ширхэг тоо агуулах ёстой. (Процесс бүр $2$ мөр үйлдлээс тогтоно).