#include <bits/stdc++.h>
using namespace std;
int main(){
cin.tie(nullptr);
ios_base::sync_with_stdio(false);
int n;
cin>>n;
vector<int> l(n);
vector<int> dp(n,0);
vector<int> maxUntil(n,0);
for(int i = 0;i<n;i++){
int r;
cin>>l[i]>>r;
}
for(int i = 0;i<n;i++){
if(i-l[i]-1>=0){
dp[i] = max(dp[i],maxUntil[i-l[i]-1]+1);
}else{
dp[i] = 1;
}
if(i!=0){
maxUntil[i] = max(maxUntil[i-1],dp[i]);
}else{
maxUntil[i] = dp[i];
}
}
cout<<maxUntil[n-1]<<endl;
}
/*
4
1 0
1 0
1 0
4 0
*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |