Submission #1000853

#TimeUsernameProblemLanguageResultExecution timeMemory
1000853MarwenElarbiA Difficult(y) Choice (BOI21_books)C++17
10 / 100
2 ms1204 KiB
#include <bits/stdc++.h> using namespace std; #define fi first #define se second #define ll long long #define pb push_back #define ii pair<int,int> const int nax=2e5+5; mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); long long skim(int); void answer(std::vector<int>); void impossible(); void solve(int N, int K, long long A, int S){ int l=0; int r=N-K+2; ll cur=0; vector<ll> vis(N+1,0); while(r-l>1){ int mid=(r+l)/2; cur=0; for (int i = mid; i < mid+K ; ++i) { if(vis[i]!=0) cur+=vis[i]; else { vis[i]=skim(i); cur+=vis[i]; } } if(cur>=A) r=mid; else l=mid; } if(cur>2*A||r==N-K+2) impossible(); else{ vector<int> ans; for (int i = r; i < r+K; ++i) { ans.pb(i); } answer(ans); } return; }
#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...