Submission #1356547

#TimeUsernameProblemLanguageResultExecution timeMemory
1356547yyc000123Bouquet (EGOI24_bouquet)C++20
18 / 100
19 ms3564 KiB
#include<bits/stdc++.h>
using namespace std ;
#define F first
#define S second
const int N = 2e5+5 ;
int n , l[N] , r[N] , dp[N] , maxi[N] ;

int main(){
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0) ;
    cin >> n ;
    for(int i=1 ; i<=n ; i++) cin >> l[i] >> r[i] ;
    for(int i=1 ; i<=n ; i++){
        if(i-3>=0) dp[i]=maxi[i-3]+1 ;
        else dp[i]=1 ;
        for(int j=i-2 ; j<=i-1 ; j++){
            if(j>0 && j+r[j]<i && j<i-l[i]) dp[i]=max(dp[i],dp[j]+1) ;
        }
        maxi[i]=max(maxi[i-1],dp[i]) ;
    }
    cout << maxi[n] << '\n' ;
    return 0 ;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...