Wejście Wyjście Przykłady
Transkrypt
Wejście Wyjście Przykłady
Robot Sobotnie Koło Naukowe, grupa II. Dostępna pamięć: 64 MB. 28 III 2015 Marcin zaprogramował robota do zbierania kapsli i teraz chce zobaczyć jak on działa. Położył więc N kapsli jeden obok drugiego w jednej linii i ponumerował je od 1 do N . Następnie ustawił robota na lewo od wszystkich kapsli i go uruchomił. Pojedynczy ruch robota wygląda następująco: robot jedzie w ustalonym kierunku i zatrzymuje się przy pewnym kapslu. Następnie robot podnosi ten kapsel i zmienia kierunek, w którym się porusza. Robot może się zatrzymać przy dowolnym z tych kapsli, do których może dojechać. Jeśli w kierunku w którym jedzie nie ma żadnego kapsla, a robot nie zebrał jeszcze wszystkich kapsli, to wybuchnie. Robot kończy się ruszać jak już zbierze wszystkie kapsle. Marcin teraz zastanawia się, na ile różnych sposób może robot zebrać wszystkie kapsle? Wejście W pierwszym wierszu standardowego wejścia znajdują się jedna liczba całkowita N (1 6 N 6 3000) oznaczająca liczbę kapsli. Wyjście W pierwszym wierszu standardowego wyjścia powinna znaleźć się jedna liczba całkowita oznaczająca liczbę sposobów na jakie robot może zebrać wszystkie kapsle modulo 109 + 7. Przykłady Wejście: 4 Wejście: 2 Wejście: 3 Wyjście: 5 Wyjście: 1 Wyjście: 2 Robot