Submission #1121560

#TimeUsernameProblemLanguageResultExecution timeMemory
1121560vjudge1Ice Hockey World Championship (CEOI15_bobek)C++17
10 / 100
339 ms8636 KiB
#include <bits/stdc++.h> #define all(v) v.begin(), v.end() #define int long long using namespace std; signed main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; cin >> n >> m; int a[n]; for(int &i : a) cin >> i; if(n == 1) { if(a[0] <= m) cout << 2; else cout << 1; return 0; } vector<int> v; for(int i = 0; i < (1 << (n / 2)); i++) { int s = 0; for(int j = 0; j < n / 2; j++) { if((1 << j) & i) s += a[j]; } if(s <= m) { v.push_back(s); } } sort(all(v)); int ans = 1; for(int i = 0; i < (1 << (n - n / 2)); i++) { int s = 0; for(int j = n / 2; j < n; j++) { if((1 << (j - n / 2)) & i) s += a[j]; } if(s <= m) { ans += upper_bound(all(v), m - s) - v.begin(); } } 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...