Submission #1258607

#TimeUsernameProblemLanguageResultExecution timeMemory
1258607motionGlobal Warming (CEOI18_glo)C++20
0 / 100
40 ms3264 KiB
#include<bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int n,x; cin>>n>>x; vector<int> v(n); for(int i=0;i<n;i++) { cin>>v[i]; } vector<int> dp,val(n); for(int i=0;i<n;i++) { int pos=lower_bound(dp.begin(),dp.end(),v[i])-dp.begin(); int pos_2=lower_bound(dp.begin(),dp.end(),v[i]+x)-dp.begin(); val[i]=pos_2; if(pos==dp.size()) { dp.push_back(v[i]); } else { dp[pos]=v[i]; } } vector<int> dp2(n+1,0); for(int i=n-1;i>=0;i--) { int pos=lower_bound(dp2.begin(),dp2.end(),v[i])-dp2.begin(); dp2[pos-1]=v[i]; val[i]+=n+1-pos; } int ans=0; for(int i=0;i<n;i++) { ans=max(ans,val[i]); } cout<<ans+1; }
#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...