Kocka
시간 제한1.5초메모리 제한1024 MB
N x N x N 정육면체의 단위 정육면체 색을 관리하며, 회전 시 각 화면 위치에서 처음 보이는 색을 N x N 표로 출력한다.
문제
Zamisli kocku. Kocku dimenzije koja se sastoji od jediničnih kockica. Svaka jedinična kockica u kocki je u početku bezbojna tj. prozirna i vidi se kroz nju, a tijekom vremena na naš zahtjev cijela može promijeniti boju.
Zamisli da ta kocka stoji na staklenoj rotirajućoj podlozi. Znamo da kocka ima šest strana: prednju, stražnju, lijevu, desnu, gornju i donju. U početku, prednja strana kocke je okrenuta prema tebi, stoji u razini očiju i gledaš u nju. Kroz prozirne kockice vidi se sve do prve obojene kockice.
E sada, neka je dano upita, a -ti od njih je jednog od sljedećeg oblika:
- - jedinična kockica koja se nalazi u -tom redu (brojeći od gornje strane prema donjoj), -tom stupcu (brojeći od lijeve strane prema desnoj) i na dubini (brojeći od prednje strane prema stražnjoj) poprima boju . Pazi, kocka je okrenuta prednjom stranom prema tebi.
- - zarotiraj kocku tako da strana dođe na prednju stranu (ispred tvojih očiju) te ispiši tablicu dimenzija boja koje sada vidiš. Ako se na nekom mjestu u potpunosti vidi kroz kocku, za to mjesto ispiši . Vrati kocku u početni položaj, tj. da je prednja strana opet okrenuta prema tebi.
입력
U prvom su retku prirodni brojevi i (, ), brojevi iz teksta zadatka.
U -tom od sljedećih redaka nalazi se po jedan upit prve ili druge vrste.
- ako je prvi broj u upitu , onda su u tom upitu još prirodni brojevi (, , , ), iz teksta zadatka;
- ako je prvi broj u upitu onda u tom upitu još dolazi niz znakova ( bit će jedna od sljedećih riječi: “prednja”, “straznja”, “lijeva”, “desna” i označava stranu koju treba zarotirati pred sebe, tamo gdje je do tada bila prednja), iz teksta zadatka.
출력
Za svaki upit druge vrste ispiši tablicu veličine , odgovor na taj upit.
힌트
Opis prvog probnog primjera
Na početku su sve kockice u kocki veličine bezbojne. Prvi upit: ispiši izgled prednje strane kocke. Rotacija nije potrebna jer je ta strane već okrenuta prema nama. Kako je cijela kocka prozirna, odgovor na prvi upit je tablica popunjena nulama.
Nakon toga dolaze dva upita gdje kockica u gornjem lijevom prednjem kutu poprima boju , a kockica u donjem desnom stražnjem kutu boju . Nakon toga dolaze dva upita od kojih prvi traži izgled kocke kada okrenemo stražnju stranu ispred nas, a drugi kada okrenemo desnu stranu ispred nas. U prvom slučaju kockica obojena bojom će se nalaziti u gornjem desnom kutu, a kockica boje u donjem lijevom. U drugom slučaju bit će isto kao i pogled od naprijed.
Opis drugog probnog primjera:
U ovom primjeru imamo kocku veličine te na početku mijenjamo boje svih kockica u drugom redu na dubini dva. Gledajući s lijeva, vidjet ćemo samo onu kockicu boje , a gledajući s desna onu boje .