Submission #1005203

#TimeUsernameProblemLanguageResultExecution timeMemory
1005203Valaki2Ice Hockey World Championship (CEOI15_bobek)C++14
100 / 100
170 ms22708 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pb push_back #define mp make_pair #define pii pair<int, int> #define fi first #define se second vector<int> do_for(vector<int> v) { int n = v.size(); vector<int> res; for(int mask = 0; mask < (1 << n); mask++) { int sum = 0; for(int i = 0; i < n; i++) { sum += ((mask >> i) & 1) * v[i]; } res.pb(sum); } sort(res.begin(), res.end()); return res; } void solve() { int n, m; cin >> n >> m; vector<int> v(n); for(int i = 0; i < n; i++) { cin >> v[i]; } if(n == 1) { if(v[0] <= m) { cout << "2\n"; } else { cout << "1\n"; } return; } int as = n / 2; int bs = n - as; vector<int> a = v; a.resize(as); vector<int> b = v; reverse(b.begin(), b.end()); b.resize(bs); reverse(b.begin(), b.end()); vector<int> x = do_for(a); vector<int> y = do_for(b); reverse(y.begin(), y.end()); int ans = 0; int idx = 0; for(int cur : x) { while(idx < y.size() && cur + y[idx] > m) { idx++; } ans += y.size() - idx; } cout << ans << "\n"; } signed main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); solve(); }

Compilation message (stderr)

bobek.cpp: In function 'void solve()':
bobek.cpp:54:19: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |         while(idx < y.size() && cur + y[idx] > m) {
      |               ~~~~^~~~~~~~~~
#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...