Wrath
题目传送门
#include <iostream>
#include <fstream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <stack>
#include <vector>
#include <map>
#include <set>
#include <cmath>
#include <algorithm>
#include <functional>
#define inf 10000000
using namespace std;
typedef long long ll;
const int MAXN=5e6+10;
const int MAX=1e6+10;
const double eps=1e-6;
int main(){
#ifdef ONLINE_JUDGE
#else
freopen("in.txt","r",stdin);
#endif
int n,t,ans=0;
cin>>n;
stack<int>q;
q.push(1);
for(int i=1;i<=n;i++){
scanf("%d",&t);
if(i==1) continue;
else{
while(q.size()&&(q.top()-(i-t))>=0)
q.pop(),ans++;
q.push(i);
}
}
cout<<n-ans<<endl;
return 0;
}