Universal Cup Judging System

Universal Cup

Süre Sınırı: 1.0 s Bellek Sınırı: 1024 MB Toplam puan: 100 Zorluk: [göster] Hack'lenebilir ✓
İstatistikler

Филломино (Fillomino) дағдыларын жаттықтырғаннан кейін, Little Cyan Fish «The Artisan of Glimmith» ойынында көбірек жаттығуды ұйғарды.

Little Cyan Fish алдымен сізді филломино ережелерімен таныстырады:

$m$ жол мен $n$ бағаннан тұратын тіктөртбұрышты торды кез келген екі көршілес аймақтың ауданы әртүрлі болатындай етіп бірнеше аймаққа бөліңіз (әр аймақтың ұяшықтары ортогональды байланысқан болуы керек). Тордағы кейбір ұяшықтарға сандар алдын ала жазылған. Бұл сан ұяшық тиесілі аймақтың ауданын білдіреді.

problem_18007_e875ed6aff86064e6bfc40f5b6e7c6a4.png

Филломино басқатырғышының мысалы. Дереккөз: Puzzle GP 2022 R4

Енді Little Cyan Fish сізге филломино тақтасын береді және ол осы филломино басқатырғышы үшін кез келген жарамды шешімді құрастырғысы келеді.

Әрине, бұл есеп Little Cyan Fish үшін тым қиын, сондықтан сізге тек $m = 1$ болған жағдайды шешу жеткілікті. Басқаша айтқанда, $n$ ұяшықтан тұратын бір жол берілген, сіз осы ұяшықтарды келесі шарттар орындалатындай етіп бірнеше кесіндіге (әрбір кесінді қатар орналасқан бірнеше ұяшықты толығымен қамтиды) бөлгіңіз келеді:

  • Кез келген екі көршілес кесіндінің ұзындықтары әртүрлі болуы керек;
  • Кейбір ұяшықтарда сандар бар, және бұл сандар осы ұяшық тиесілі кесіндідегі ұяшықтар санын білдіреді.

Little Cyan Fish сізден тақта үшін жарамды шешімнің бар-жоғын анықтауды сұрайды. Егер ол бар болса, кез келген жарамды шешімді шығаруыңыз керек.

Кіріс деректер

Бірнеше тест жиыны берілген. Кіріс деректердің бірінші жолында тест жиындарының санын білдіретін бір бүтін сан $T$ ($1 \le T$) берілген.

Әрбір тест жиыны үшін кіріс деректердің бірінші жолында бүтін сан $n$ ($1 \le n \le 10^6$) берілген.

Келесі жолда $n$ бүтін сан $a_1, a_2, \dots, a_n$ ($0 \le a_i \le n$) берілген. Егер $a_i = 0$ болса, бұл $i$-ші ұяшыққа ешқандай сан жазылмағанын білдіреді. Әйтпесе, бұл $i$-ші ұяшыққа $a_i$ саны жазылғанын білдіреді.

Барлық тест жиындары бойынша $n$ қосындысы $10^6$-нен аспайтынына кепілдік беріледі.

Шығыс деректер

Әрбір тест жиыны үшін, егер сандарды толтырудың ешқандай жарамды сұлбасы болмаса, онда «No» деген бір жолды шығарыңыз.

Әйтпесе, шығыс деректердің бірінші жолында «Yes» жолы болады. Келесі жолда сіз құрастырған сұлбадағы әрбір ұяшық орналасқан кесіндінің ұзындығын білдіретін $n$ бүтін санды шығарыңыз. Егер талаптарға сай келетін бірнеше сұлба болса, олардың кез келгенін шығаруға болады.

Мысал

Кіріс 1

7
3
0 0 0
4
2 0 0 0
4
0 2 0 0
6
0 3 3 0 3 0
10
2 0 0 3 0 0 4 0 0 1
6
0 0 1 1 0 0
6
1 2 3 4 5 6

Шығыс 1

Yes
2 2 1
No
Yes
1 2 2 1
No
Yes
2 2 3 3 3 4 4 4 4 1
No
No

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.