Limit pamięci: 32MB
Mały (ale skomplikowany) korek możemy przedstawić za pomocą planszy składającej się z 6 x 6 kwadratowych pól. Znajdują się na niej samochody i ciężarówki. Samochód zajmuje prostokąt składający się z 1 x 2 pól, a ciężarówka zajmuje prostokąt składający się z 1 x 3 pól. Pojazdy mogą być położone na planszy poziomo (w kierunku wschód - zachód) lub pionowo (w kierunku północ - południe).
Pojazdy nie mogą na siebie wjeżdżać, nie mogą się obracać, i nie mogą wyjechać poza planszę. Mogą one poruszać się tylko w swoim kierunku. Pojazdy położone poziomo nie mogą się poruszać w pionie i na odwrót. W pojedyńczym ruchu możemy przemieścić jeden pojazd o dowolną liczbę pól tam gdzie jest wolne miejsce i o ile nie natknie się on na inny pojazd lub na krawędź planszy.
Celem jest poprzemieszczać pojazdy w tył i w przód tak, aby zadany poziomy pojazd (twój samochód) wyjechał z prawej strony planszy (wschodni brzeg), gdyż zakładamy, że właśnie tam jest wyjazd z korka.
W pierwszym wierszu wejścia znajdują się liczba całkowita n (1 <= n <= 10), oznaczająca liczbę pojazdów w korku. W każdej z następnych n linii znajduje się opis jednego pojazdu. Pierwszy znak opisu pojazdu jest literą oznaczającą orientację pojazdu. 'h' oznacza pojazd poziomy, a 'v' pojazd pionowy. Następnie jest pojedyńcza spacja, a potem dwie liczby całkowite r,c (1 <= r,c <= 6) oddzielone pojedyńczą spacją. Oznaczają one współrzędne lewego górnego pola zajmowanego przez pojaz. Na końcu jest jeszcze spacja i pojedyńczy znak 'c' lub 't' oznaczający odpowiednio, że pojazd jest samochodem lub ciężarówką. Pierwszy opisywany pojazd jest tym, który ma wyjechać z korka, i można założyć, że jest to samochód poziomy.
Na wyjściu program powinien wypisć jedną liczbę całkowitą - najmniejszą liczbę ruchów potrzebnych do wyjechania z korka lub napis Zablokowany w przypadku , gdy jest to niemożliwe.
Dla danych wejściowych:
8 h 3 2 c h 1 1 c h 5 5 c h 6 3 t v 2 1 t v 5 1 c v 2 4 t v 1 6 t
poprawnym wynikiem jest:
8
[Zgłoś rozwiązanie] [Moje zgłoszenia]