天天看點

CF 1140A. Detective Book(簡單模拟題)

【題面】

CF 1140A. Detective Book(簡單模拟題)

【題解】

題意:我們要看一本帶有謎題的書,解開第i頁謎題的内容在第ai頁,每一天從下一未讀頁開始,隻有在解開所讀頁碼的所有謎題才會停止,問看完這本書要幾天。

思路:不斷尋找謎底所在最大的頁數,模拟即可。

【代碼】

int main()
{
    int n; scanf("%d",&n);
    int ans=0,a[10005];
    for(int i=1;i<=n;i++) scanf("%d",&a[i]);
    int bg=1,ed=a[1];
    while(bg<=n){
        ans++;
        for(int i=bg;i<=ed;i++)
            ed=max(ed,a[i]);
        bg=ed+1,ed=a[bg];
    }
    printf("%d\n",ans);
    return 0;
}