Submission #1256186

#TimeUsernameProblemLanguageResultExecution timeMemory
1256186MasterDebaterA Difficult(y) Choice (BOI21_books)C++20
0 / 100
0 ms420 KiB
#include "books.h" #include<bits/stdc++.h> using namespace std; #define ll long long #define pii pair<ll,ll> #define F first #define S second const int N=2e5+10; bool bio[N]; int binary_search(int lo,int hi,ll a){ int res=0; while(lo<=hi){ int mid=(lo+hi)/2; if(skim(mid)<a)res=mid,lo=mid+1; else hi=mid-1; } return res; } void solve(int N,int K,ll A,int S){ int L=binary_search(1,N,A); vector<pii>v; for(int i=1;i<=K;i++)if(!bio[i])bio[i]=1,v.push_back({i,skim(i)}); for(int i=max(1,L-K+1);i<=L;i++)if(!bio[i])bio[i]=1,v.push_back({i,skim(i)}); int sz=v.size(); for(int i=0;i<(1<<sz);i++){ vector<int>ans; ll sum=0; for(int j=0;j<sz;j++)if((i>>j)&1)ans.push_back(v[i].F),sum+=v[i].S; if(sum>=A and sum<=2*A){ answer(ans); } } 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...