| 시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
|---|---|---|---|---|---|
| 4 초 | 1024 MB | 6 | 2 | 1 | 50.000% |
Juku arvutiekraan on lõpmata lai, aga vaid 2 cm kõrge. On mõistetav, et sellise ekraaniga on paljusid arvutimänge väga ebamugav mängida. Kõiketeadev jõuluvana toob Jukule tema arvutiga sobivaid mänge. Üks selline on Linesweeper.
Linesweeperi mängulaud koosneb kahe rea ja lõpmatu arvu veergudega tabelist; tabeli veerud on nummerdatud täisarvudega. Alumise rea ruutudes võivad olla miinid; miinide asukohad ei ole teada. Ülemise rea igas ruudus on kirjas täisarv, mis näitab, mitu miini selle ruudu naaberruutudes asub. Kaks ruutu on naaberruudud, kui neil on ühine nurk või serv. Mängija ülesandeks on leida, millistes ruutudes on miinid.
Lohaka programmeerimise tulemusena on sellel mängul mõned omapärased vead:
Juku on selles mängus üsna osav --- ta suudab enamasti miinide asukohad ise selgeks teha, aga vahel vajab veidi abi vihjete näol. Juku küsib alati vihjet kujul "kas ruudul $i$ on miin?". Märgime, et sellele küsimusele on neli erinevat võimalikku vastust:
!);x);o);?).Jukule vihjete andmine on aga tüütu ja seda tööd võiks teha programm.
Formaalselt antakse meile $Q$ päringut, mis võivad olla kahest tüübist:
Kirjutada programm, mis nendele päringutele vastab.
Sisendi esimesel real on täisarv $Q$ (1ドル \le Q \le 2 \cdot 10^5$).
Järgneb $Q$ rida, millest igaüks kirjeldab ühte päringut. Rida on kas kujul 1 i c (1ドル \le i \le 10^5,ドル 0ドル \le c \le 3$) või 2 i (1ドル \le i \le 10^5$), kirjeldades vastavalt esimest või teist tüüpi päringut.
Iga sisendis antud teist tüüpi päringule tuleb vastata eraldi reale ühega sümbolitest x, o, !, ?.
12 1 1 1 1 2 2 1 3 2 1 4 2 1 5 1 1 6 1 2 1 2 2 2 3 2 4 2 5 2 6
o x x o x o
14 1 1 1 1 5 1 1 2 2 1 4 2 1 3 3 2 2 2 3 2 4 1 2 1 1 4 1 1 3 2 2 2 2 3 2 4
x x x x o x
8 2 44 1 3 1 2 1 2 77 1 4 1 1 2 1 2 3 2 91191
o ! ! x o
Esimeses näites jääb Juku esimest korda hätta järgmise mängu korral:
Saab näidata, et alumisel real toodu on ainus võimalik miinide paigutus.
Kolmandas näites jääb Juku hätta juba esimesel mängul, kus ülemine rida koosneb ainult nullidest. On selge, et sel juhul ei saa ühelgi ruudul olla miini --- seega ei ole miini ka ruudul 44.
Hätta jääb ta samas näites ka järgmisel mängul. Siin erineb mängulaud eelmisest ainult selle võrra, et ruudul numbriga 3 on nüüd kirjas arv 1:
Sellele ülemisele reale vastavat miinide paigutust ehk alumist rida olla ei saa. Tõepoolest, kui ühes ruudu 3 naaberruutudest oleks miin, siis oleks ka ruudus 2 või 4 nullist erinev arv. Juku küsib selle mängu kohta vihjet kaks korda: vastavalt ülalolevale on mõlema vastus !.
Kaks mängu hiljem jääb ta uuesti hätta. Nüüd on mängulaud selline:
Jälle saab näidata, et alumisel real toodud paigutus on ainus võimalik. Seega on ruudul 3 kindlasti miin ja ruudul 91191 kindlasti miini pole.
Kuna teises näites on mõned esimest tüüpi päringud pärast mõnesid teist tüüpi päringuid, siis see test ei saa esineda esimeses testigrupis.
Kuna kolmandas näites on mõne päringu vastus !, siis see test ei saa esineda esimeses ega teises testigrupis.