제출 #1184948

#제출 시각아이디문제언어결과실행 시간메모리
1184948petezaIce Hockey World Championship (CEOI15_bobek)C++20
100 / 100
289 ms20896 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; int n; ll m; ll c[45]; bool mode = 0; vector<ll> v1, v2; void rec(int l, int r, ll sum = 0) { if(l > r) { if(mode) v2.push_back(sum); else v1.push_back(sum); return ; } rec(l+1, r, sum); rec(l+1, r, sum + c[l]); } int main() { cin.tie(0) -> sync_with_stdio(0); cin >> n >> m; for(int i=1;i<=n;i++) cin >> c[i]; rec(1, min(n, 20)); mode = 1; if(n > 20) rec(21, n); else v2.push_back(0); sort(v2.begin(), v2.end()); ll sum = 0; for(auto &e:v1) { sum += (upper_bound(v2.begin(), v2.end(), m-e) - v2.begin()); } cout << sum; }
#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...