Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
DEN_04_02 - Mapa |
Na mapie znajduje się skarb, który musisz jak najszybciej znaleźć. Jak go znajdziesz, to czeka cię cenna nagroda. Dostaniesz szóstkę z programowania z informatyki :)
Mapa to kwadratowa macierz złożona ze znaków: # oraz o (mała litera o), gdzie # to skała, natomiast o to przestrzeń, po której można się poruszać. Na mapie znajdziesz także jeden znak b — jest to miejsce, w którym się znajdujesz, oraz jeden znak s, w którym znajduje się skarb. Nie wolno wychodzić poza mapę, lewy jej kraniec nie łączy się z prawym oraz góra nie łączy się z dołem.
Twoim zadaniem jest znalezienie najkrótrzej ścieżki z punktu b do punktu s. Pamiętaj, że możesz poruszać się tylko po polach oznaczonych znakiem o idąc w góre, w dół, w lewo lub w prawo. Powodzenia!
Wejście
W pierwszym wierszu jedna liczba n określająca wielkość mapy. Liczba ta zawiera się w przedziale [3..1000].
W kolejnych n wierszach po n znaków tworzących mapę.
Wyjście
Jedna liczba będąca długością najkrótszej ścieżki lub -1, jeśli ścieżka nie istnieje. Przejście z jednego pola na drugie liczymy jako 1.
Przykład
Wejście: 4 ##ob oooo o### ooos Wyjście: 9
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2022-10-13 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |