CF407B.Long Path

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

One day, little Vasya found himself in a maze consisting of (n+1)(n+1) rooms, numbered from 11 to (n+1)(n+1) . Initially, Vasya is at the first room and to get out of the maze, he needs to get to the (n+1)(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 ii (1<=i<=n)(1<=i<=n) , someone can use the first portal to move from it to room number (i+1)(i+1) , also someone can use the second portal to move from it to room number pip_{i} , where 1<=pi<=i1<=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 11 .
  • Let's assume that Vasya is in room ii 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 pip_{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)(n+1) in the end.

输入格式

The first line contains integer nn ( 1<=n<=1031<=n<=10^{3} ) — the number of rooms. The second line contains nn integers pip_{i} ( 1<=pi<=i1<=p_{i}<=i ). Each pip_{i} denotes the number of the room, that someone can reach, if he will use the second portal in the ii -th room.

输出格式

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 10000000071000000007 (109+7)(10^{9}+7) .

输入输出样例

  • 输入#1

    2
    1 2
    

    输出#1

    4
    
  • 输入#2

    4
    1 1 2 3
    

    输出#2

    20
    
  • 输入#3

    5
    1 1 1 1 1
    

    输出#3

    62
    
首页