Submission #1288146

#TimeUsernameProblemLanguageResultExecution timeMemory
1288146gustavo_dBali Sculptures (APIO15_sculpture)C++20
9 / 100
1096 ms584 KiB
#include <bits/stdc++.h> using namespace std; #pragma GCC optimize("O3") #define sz(v) (int)(v).size() typedef long long ll; const int MAXN = 101; const int MAXV = 20; const int INF = 1e9; const ll INFLL = 1e18; int dp[MAXN][MAXN*MAXV]; int arr[MAXN]; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n, l, r; cin >> n >> l >> r; // int k = r; for (int i=0; i<n; i++) cin >> arr[i]; ll ans = INFLL; for (int m=0; m<(1 << n); m++) { vector<pair<int, int>> rngs; int last = (m & 1), ini=0; for (int i=1; i<n; i++) { if ((((1 << i) & m) != 0) == last) continue; rngs.emplace_back(ini, i-1); ini = i; last = (((1 << i) & m) != 0); } rngs.emplace_back(ini, n-1); if (sz(rngs) < l or sz(rngs) > r) continue; ll res = 0; for (auto [ini, end] : rngs) { ll sum = 0; for (int i=ini; i<=end; i++) sum += arr[i]; // cout << sum << ' '; res |= sum; } // cout << '\n'; // cout << bitset<6> (m) << ':'; // for (auto [ini, end] : rngs) cout << ini << ' ' << end << ','; // cout << '\n'; // cout << res << '\n'; ans = min(ans, res); } cout << ans << '\n'; // for (int i=1; i<=n*MAXV; i++) dp[0][i] = INF; // dp[0][0] = 0; // for (int i=1; i<=n; i++) { // for (int cost=0; cost<=i*MAXV; cost++) { // dp[i][cost] = INF; // int sum = 0; // for (int j=i; j>=1; j--) { // sum += arr[j]; // for (int lastCost=0; lastCost<=(j-1)*MAXV; lastCost++) { // if ((lastCost | sum) != cost) continue; // dp[i][cost] = min( // dp[i][cost], // dp[j-1][lastCost] + 1 // ); // } // } // } // } // for (int cost=0; cost<=n*MAXV; cost++) { // if (dp[n][cost] <= k) { // cout << cost << '\n'; // break; // } // } 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...