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

Podobne dokumenty