Laiko ribojimas: 1.0s

Atminties ribojimas: 128MB

Duomenų failas: lmio_2014_ketursraigtis_jau.in

Rezultatų failas: lmio_2014_ketursraigtis_jau.out

Jei norite pateikti savo sprendimą - prisijunkite.

Ketursraigtis (LMIO 2014)

Ketursraigtis

Linas įsigijo ketursraigtį, kuriam pats rašys programas mašininiu kodu.

Ketursraigčio procesorius gali vykdyti dviejų tipų komandas: skristi nurodytą teigiamą metrų skaičių viena iš šešių krypčių arba pakartoti buvusią komandą nurodytą skaičių kartų.

Komandos koduojamos sveikaisiais skaičiais nuo 0 iki 6, po kurių eina sveikasis skaičius, nurodantis komandos parametrą:

Komanda Veiksmas Pavyzdys Paaiškinimas
0
Skrisk pirmyn
0 3
Skrisk pirmyn tris metrus
1
Skrisk atgal
1 3
Skrisk 3 metrus atgal
2
Skrisk kairėn
2 5
Skrisk kairėn 5 metrus
3
Skrisk dešinėn
3 2
Skrisk dešinėn 2 metrus
4
Skrisk į viršų
4 3
Skrisk į viršų tris metrus
5
Skrisk žemyn
5 1
Skrisk žemyn 1 metrą
6
Pakartok paskutinę komandą
6 3
Pakartok prieš tai buvusią komandą 3 kartus.
Pastaba. Pati komanda negali kartotis, t.y., negali būti dviejų ar daugiau iš eilės einančių komandų su kodu 6. Taip pat ji negali būti pirma komanda ketursraigčio valdymo programoje

Linas nori išbandyti ketursraigtį tuščiame kubo formos name: jį paleis iš kambario centro taip, kad skrydžio kryptys būtų lygiagrečios ar statmenos kambario sienoms, luboms, grindims.

Užduotis

Linas parašė programą ketursraigčiui valdyti. O jūs parašykite programą, kuri nustatytų, ar saugu ketursraigčiui skraidyti vykdant Lino programą, t.y. ar jis nesusidurs su sienomis, lubomis ar grindimis.

Laikykite, kad ketursraigtis skraido saugiai, jeigu atstumas iki visų kambario sienų, lubų ir grindų yra teigiamas.

Pradiniai duomenys

Pirmoje eilutėje įrašyti du skaičiai: ketursraigčio programoje esančių komandų skaičius M ir kambario matmuo N.

Tolesnėse M eilučių įrašyta po du komandą nusakančius skaičius. Komandos vykdomos ta tvarka kuria yra parašytos.

Rezultatai

Jei programa tokia, kad ketursraigtis gali skraidyti pagal ją nepatirdamas avarijų, reikia išvesti žodį GERAI, kitu atveju reikia išvesti skaičių nuo 0 iki 5, kuris parodytų kuria kryptimi skrisdamas ketursraigtis patirs avariją.

Pavyzdžiai

Pradiniai duomenys Rezultatai Paaiškinimas
2 4
1 1
6 3
1
Ketursraigtis patirs avariją, nes kiekviena kryptimi jis gali skristi tik po 1 metrą: kambario matmenys yra 4\\times4\\times4, o atstumas nuo kambario centro iki sienų, lubų ir grindų yra 2 metrai.
5 30
3 2
1 1
6 3
4 1
6 2
GERAI

Ribojimai

1\\leqM\\leq20
3\\leqN\\leq10
Komandose nuo 0 iki 5 komandos nuskrendamų metrų skaičius neviršija 3.
Komandoje 6 pasikartojimų skaičius neviršija 5.