제출 #1316921

#제출 시각아이디문제언어결과실행 시간메모리
1316921boclobanchatIce Hockey World Championship (CEOI15_bobek)C++20
100 / 100
171 ms20964 KiB
#include<bits/stdc++.h> using namespace std; const long long INF=2e18; vector<long long> va,vb; long long A[67]; void backtrack(int i,int n,long long val,bool ck) { if(i<=n) { backtrack(i+1,n,val,ck); backtrack(i+1,n,min(INF,val+A[i]),ck); } else if(!ck) va.push_back(val); else vb.push_back(val); } int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; long long s; cin>>n>>s; for(int i=1;i<=n;i++) cin>>A[i]; backtrack(1,n/2,0,false); backtrack(n/2+1,n,0,true); sort(va.begin(),va.end()); sort(vb.begin(),vb.end()); long long ans=0,r=vb.size()-1; for(auto v:va) { while(r>=0&&v+vb[r]>s) r--; ans+=r+1; } cout<<ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...