问题 4594 --4.read

4594: 4.read

题目描述

  Carol是一-个爱学习的小朋友,他最近在读一本书,这本书的某些页十分晦涩难懂,需要阅读完另一页的内容才能完全理解。而有些页则比较通俗易懂,阅读完当前页即可理解。
Carol是一个喜欢钻研的小朋友,他每天都会从这本书中页数最小的从未读过的一页开始读, 读到完全理解这一页的内容为止。
例如对于当Carol某一天要读这本书的第a页时,这一页要求读完第b页才能理解,于是Carol又要去读第b页,而第b页要求读完第c页才能理解,于是Carol又要去读第c页,而第c页不需要读别的页就可以理解,或是需要读的页在之前已经读过了,最终Carol这天读了a,b, c这三页内容。
Carol想知道自己需要花多少天才能读完这本书。

输入

第一行一个整数n,表示这本书有n页
第二行有n个正整数a1, a2....an,其中ai表示要读完第i页的内容要先读完第ai页的内容。(ai≥i)

输出

一个正整数,表示读完这本书需要的时间

样例输入输出

输入#1 复制
6
1 3 3 5 6 6
输出#1 复制
3
输入#2 复制
10
3 4 3 4 8 7 8 10 10 10
输出#2 复制
5

提示

【样例1解释】
第一天Caro读了第一页,不需要再阅读其他页。
第二天Caro读了第二页,第二页要求读完第三页,于是他又读了第三页。
第三天Carol读了第四页,第四页要求读完第五页,第五页又要求读完第六页,于是他把这些页都读了。
【样例2解释】
第一天Carol读了第1,3页
第二天Caro读了第2, 4页
第三天Caro读了第5, 8, 10页
第四天Caro读了第6,7页
第五天Carol读了第9页

对于20%的数据,ai= i
对于另外20%的数据,ai = min(i+ 2,n)

对于所有数据,1≤n≤100000


序号 标题 作者 发表时间 费用 订购数 操作