Codeforces Round 239 (Div. 1)
B
Long Path
Codeforces
1600
原题
← AC →
翻译中…

One day, little Vasya found himself in a maze consisting of $(*n* + 1)$ rooms, numbered from $1$ to $(*n* + 1)$. Initially, Vasya is at the first room and to get out of the maze, he needs to get to the $(*n* + 1)$-th one.

翻译中…

The maze is organized as follows. Each room of the maze has two one-way portals. Let's consider room number $*i*$ $(1 ≤ *i* ≤ *n*)$, someone can use the first portal to move from it to room number $(*i* + 1)$, also someone can use the second portal to move from it to room number $*p*_{*i*}$, where $1 ≤ *p*_{*i*} ≤ *i*$.

翻译中…

In order not to get lost, Vasya decided to act as follows.

翻译中…
  • Each time Vasya enters some room, he paints a cross on its ceiling. Initially, Vasya paints a cross at the ceiling of room $1$.
  • Let's assume that Vasya is in room $*i*$ and has already painted a cross on its ceiling. Then, if the ceiling now contains an odd number of crosses, Vasya uses the second portal (it leads to room $*p*_{*i*}$), otherwise Vasya uses the first portal.
翻译中…

Help Vasya determine the number of times he needs to use portals to get to room $(*n* + 1)$ in the end.

翻译中…

Input

翻译中…

The first line contains integer $*n*$ ($1 ≤ *n* ≤ 10^{3}$) — the number of rooms. The second line contains $*n*$ integers $*p*_{*i*}$ ($1 ≤ *p*_{*i*} ≤ *i*$). Each $*p*_{*i*}$ denotes the number of the room, that someone can reach, if he will use the second portal in the $*i*$-th room.

翻译中…

Output

翻译中…

Print a single number — the number of portal moves the boy needs to go out of the maze. As the number can be rather large, print it modulo $1000000007$ $(10^{9} + 7)$.

翻译中…

样例

Input #1
2
1 2
Output #1
4
InputCopy OutputCopy
Input #2
4
1 1 2 3
Output #2
20
InputCopy OutputCopy
Input #3
5
1 1 1 1 1
Output #3
62
InputCopy OutputCopy
题目信息
题号
407B
时间限制
1 s
内存限制
256 MB
标签
动态规划
模拟

题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。