Submission #1192235

#TimeUsernameProblemLanguageResultExecution timeMemory
1192235lucaskojimaBali Sculptures (APIO15_sculpture)C++17
9 / 100
1096 ms436 KiB
// subtask 1
#include "bits/stdc++.h"
#define sz(x) (int)size(x)
#define all(x) begin(x), end(x)
#define rall(x) rbegin(x), rend(x)

using namespace std;
using ll = long long;
using pii = pair<int, int>;

const char nl = '\n';
const int INF = 0x3f3f3f3f;
const ll LINF = 0x3f3f3f3f3f3f3f3f;

int32_t main() {
  ios::sync_with_stdio(0), cin.tie(0);

  int n, a, b; cin >> n >> a >> b;
  vector<int> y(n); for (auto &x : y) cin >> x;

  ll ans = LINF;
  for (int mask = 0; mask < (1 << (n - 1)); mask++) {
    ll or_sum = 0, cur_sum = 0;
    for (int i = 0; i < n; i++) {
      cur_sum += y[i];
      if (mask & (1 << i)) {
        or_sum |= cur_sum;
        cur_sum = 0;
      }
    }
    or_sum |= cur_sum;

    int cnt = __builtin_popcount(mask) + 1;
    if (a <= cnt && cnt <= b)
      ans = min(ans, or_sum);
  }

  cout << ans << nl;
  return 0;
}
#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...