Eftir að hafa æft sig í Fillomino ákveður Little Cyan Fish að æfa sig meira í leiknum „The Artisan of Glimmith“.
Little Cyan Fish kynnir fyrst reglurnar í Fillomino fyrir þér:
Fyrir rétthyrning með $m$ röðum og $n$ dálkum skal skipta grindinni í nokkur svæði (reitir hvers svæðis verða að vera hornrétt tengdir), þannig að hvaða tvö aðliggjandi svæði sem er hafi ólíkt flatarmál. Sumir reitir í grindinni eru þegar með tölur. Talan gefur til kynna flatarmál svæðisins sem reiturinn tilheyrir.
Dæmi um Fillomino-þraut. Heimild: Puzzle GP 2022 R4
Little Cyan Fish gefur þér nú Fillomino-borð og hann vill smíða einhverja gilda lausn á þessari Fillomino-þraut.
Auðvitað er þetta verkefni of erfitt fyrir Little Cyan Fish, svo þú þarft aðeins að leysa tilvikið þar sem $m = 1$. Með öðrum orðum, gefin er röð með $n$ reitum og þú vilt skipta þessum reitum í nokkra búta (hver bútur inniheldur nokkra samliggjandi reiti að fullu), með þeim skilyrðum að:
- Hvaða tveir aðliggjandi bútar sem er hafi ólíka lengd;
- Sumir reitir innihalda tölur, og þessar tölur gefa til kynna fjölda reita í bútnum sem reiturinn tilheyrir.
Little Cyan Fish biður þig um að ákvarða hvort til sé gild lausn fyrir borðið. Ef hún er til þarftu einnig að prenta einhverja gilda lausn.
Inntak
Það eru mörg prófunartilvik. Fyrsta línan í inntakinu inniheldur eina heiltölu $T$ ($1 \le T$), sem gefur til kynna fjölda prófunartilvika.
Fyrir hvert prófunartilvik inniheldur fyrsta línan í inntakinu heiltölu $n$ ($1 \le n \le 10^6$).
Næsta lína inniheldur $n$ heiltölur $a_1, a_2, \dots, a_n$ ($0 \le a_i \le n$). Ef $a_i = 0$ þýðir það að engin tala er fyllt inn í $i$-ta reitinn. Annars þýðir það að $a_i$ er fyllt inn í $i$-ta reitinn.
Tryggt er að summa $n$ yfir öll prófunartilvik fer ekki yfir $10^6$.
Úttak
Fyrir hvert prófunartilvik, ef ekki er til nein gild leið til að fylla inn tölurnar, skal prenta eina línu „No“.
Annars inniheldur fyrsta línan í úttakinu strenginn „Yes“. Næsta lína prentar $n$ heiltölur, sem tákna lengd bútsins þar sem hver reitur er staðsettur í lausninni sem þú smíðaðir. Ef fleiri en ein lausn uppfyllir skilyrðin geturðu prentað hverja sem er þeirra.
Dæmi
Inntak 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
Úttak 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