제출 #574911

#제출 시각아이디문제언어결과실행 시간메모리
574911UzoufA Difficult(y) Choice (BOI21_books)C++14
0 / 100
3 ms1080 KiB
#include <bits/stdc++.h> //#include <ext/pb_ds/assoc_container.hpp> //#include <ext/pb_ds/tree_policy.hpp> #include"books.h" using namespace std; //using namespace __gnu_pbds; //#define ll long long //#define endl "\n" //int mod=1e9+7; //const int N=2e5+5; //template<class x> //using ordered_multiset = tree<x, null_type,less_equal<x>, rb_tree_tag,tree_order_statistics_node_update>; void solve(int N, int K, long long A, int S) { long long v[N]; for (int i=0;i<N;i++) { v[i]=skim(i+1); } long long na=A*2; int a=-1,b=-1,c=-1; for (int l=0;l<N;l++) { for (int r=l+2;r<N;r++) { long long nd=na-(v[l]+v[r]); //cout<<v[l]<<' '<<v[r]<<' '<<nd<<endl; int tmp=upper_bound(v+l+2,v+r,nd)-v+l+2; if (tmp<N) tmp--; else continue; long long chk=v[l]+v[r]+v[tmp]; if (chk>=A && chk<=na) { //cout<<nd<<' '<<tmp<<endl; a=v[l]; b=v[r]; c=v[tmp]; break; } if (a!=-1) break; } } if (a==-1) impossible(); vector<int> ans; ans.push_back(a); ans.push_back(b); ans.push_back(c); 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...