시간 제한메모리 제한제출정답맞힌 사람정답 비율
6 초 (추가 시간 없음) 1024 MB222100.000%

문제

Bajtosia ma w końcu chwilę wolnego i chce pograć w grę komputerową. Gra składa się z N poziomów ponumerowanych od 1 do N. Recenzenci bardzo chwalą nieliniową fabułę gry. Gracz może zacząć grę na dowolnym, wybranym przez siebie poziomie (od 1 do N). Dodatkowo, dla każdego poziomu i ustalony jest poziom Ti , który po nim następuje. Gracz wygrywa w momencie, kiedy trafia do już ukończonego poziomu. Autorzy gry nie chcieli przecież, aby gra była nudna i powtarzalna. Zauważ, że przy takich warunkach nie jest konieczne ukończenie wszystkich poziomów do wygrania gry. Gracz w ten sposób nie będzie się nudził przy kolejnej przygodzie.

Bajtosia pasjonuje się speedrunningiem – aktywnością, która polega na jak najszybszym przechodzeniu gier. Bajtosia jest w stanie przejść każdy poziom gry. Pokonanie poziomu numer i zajmuje jej dokładnie i minut. Dalej jednak nie wie jak najszybciej może wygrać.

Pomóż jej i napisz program, który wczyta opis gry, wyliczy minimalną liczbę minut potrzebną na wygranie i wypisze wynik na standardowe wyjście.

입력

W pierwszym wierszu wejścia znajduje się jedna liczba naturalna N (1 ≤ N ≤ 100 000), określająca liczbę poziomów gry. W drugim (ostatnim) wierszu wejścia znajduje się opis tych poziomów: N liczb całkowitych Ti (1 ≤ Ti ≤ N), pooddzielanych pojedynczymi odstępami: i-ta liczba określa, że po przejściu poziomu i trafia się do poziomu Ti.

출력

W pierwszym (jedynym) wierszu wyjścia należy wypisać jedną liczbę całkowitą – minimalną liczbę minut, które potrzebuje Bajtosia aby wygrać.

예제 입력 1

10
4 1 1 3 4 1 6 9 10 10

예제 출력 1

8

Wyjaśnienie do przykładu: Gra ma 10 poziomów. Ciąg T = (4, 1, 1, 3, 4, 1, 6, 9, 10, 10) z drugiego wiersza wejścia należy odczytać następująco: po ukończeniu pierwszego poziomu trafimy do poziomu numer T1 = 4, po ukończeniu drugiego poziomu trafimy do poziomu numer T2 = 1, . . . , a po ukończeniu dziesiątego poziomu trafiamy do poziomu numer T10 = 10.

Aby wygrać grę w 8 minut można rozpocząć na poziomie numer 3. Bajtosia ukończy ten poziom w 3 minuty. Następnie, ponieważ trzeci element ciągu T jest równy 1, Bajtosia trafi do poziomu numer 1, który ukończy w jedną minutę, a następnie przejdzie do poziomu numer 4 (bo T1 = 4). Poziom czwarty zajmie Bajtosi kolejne 4 minuty, po czym trafi do poziomu numer 3 (ponieważ T4 = 3), który już wcześniej ukończyła, zatem gra się zakończy wygraną. Sumarycznie przejście gry zajmie 3 + 1 + 4 = 8 minut. Zauważ, że istnieją też inne optymalne rozwiązania, które również skutkują wygraniem w 8 minut, na przykład można zacząć od poziomu numer 4.

예제 입력 2

6
2 3 1 4 6 5

예제 출력 2

4

Wyjaśnienie do przykładu: Aby wygrać grę w 4 minuty wystarczy rozpocząć na poziomie numer 4. Bajtosia przejdzie go w 4 minuty, a jako że T4 = 4, przejście tego poziomu spowoduje trafienie do poziomu numer 4 ponownie, co kończy grę. Jest to najszybszy sposób wygrania gry.

예제 입력 3

7
5 4 1 2 3 7 6

예제 출력 3

6

Wyjaśnienie do przykładu: Bajtosia mogłaby zacząć od czwartego poziomu. Ukończenie go zajęło by jej 4 minuty. Ponieważ T4 = 2, ukończenie tego poziomu spowoduje trafienie do drugiego poziomu. Bajtosia na pokonanie tego poziomu potrzebuje dwóch minut, a po jego ukończeniu trafia do poziomu numer T2 = 4, czyli poziomu już ukończonego, więc Bajtosia wygra po 6 minutach.