Submission #969405

#TimeUsernameProblemLanguageResultExecution timeMemory
969405vjudge1Global Warming (CEOI18_glo)C++17
0 / 100
31 ms4340 KiB
/* * With a little appreciation, in a mostly hollow tone, she says, "Delightful." As if the world has any meaning. * TASK : Global Warming * AUTHOR : Marszpace */ #include<bits/stdc++.h> using namespace std; int main(){ ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); int n,x; cin >> n >> x; vector<int> arr(n); for(int i=0;i<n;i++){ cin >> arr[i]; } vector<int> lis,len,tail; for(int i=0;i<n;i++){ if(lis.empty()||lis.back()<arr[i]){ lis.push_back(arr[i]); } else{ int idx=lower_bound(lis.begin(),lis.end(),arr[i])-lis.begin(); lis[idx]=arr[i]; } len.push_back(lis.size()); tail.push_back(lis.back()); } int res=-1; vector<int> lds; for(int i=n-1;i>=1;i--){ if(lds.empty()||lis.back()>arr[i]){ lds.push_back(arr[i]); } else{ int idx=lower_bound(lds.begin(),lds.end(),arr[i],greater<int>())-lds.begin(); lds[idx]=arr[i]; } if(tail[i-1]<lds.back()+x){ res=max(res,(int)lds.size()+len[i-1]); } } cout << res; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...