Submission #942862

#TimeUsernameProblemLanguageResultExecution timeMemory
942862beepbeepsheepA Difficult(y) Choice (BOI21_books)C++17
10 / 100
1 ms1364 KiB
#include <bits/stdc++.h> #include "books.h" using namespace std; // // --- Sample implementation for the task books --- // // To compile this program with the sample grader, place: // books.h books_sample.cpp sample_grader.cpp // in a single folder and run: // g++ books_sample.cpp sample_grader.cpp // in this folder. // #define ll long long void solve(int N, int K, long long A, int S) { // TODO implement this function int l=0,r=N,m; while (l!=r-1){ m=(l+r)>>1; if (skim(m)>2*A/K) r=m; else l=m; } //r is first impossible guy if (r==1){ impossible(); return; } ll arr[N+5]; ll s=max(1,r-K),e=min(N,r+K-1); for (int i=s;i<=e;i++){ arr[i]=skim(i); } if (e-s+1<K){ impossible(); return; } vector<int> v; for (int i=s;i<=e-K+1;i++){ ll tot=0; for (int j=i;j<=i+K-1;j++){ v.emplace_back(j); tot+=arr[j]; } //cerr<<endl<<i<<' '<<i+K-1<<' '<<tot<<endl; if (tot>=A && tot<=2*A){ answer(v); return; } v.clear(); } impossible(); }
#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...