Submission #1306038

#TimeUsernameProblemLanguageResultExecution timeMemory
1306038JerBali Sculptures (APIO15_sculpture)C++20
0 / 100
2 ms588 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

const int MAXN = 25;

ll y[MAXN];
int val[MAXN];

int a, b, n;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);

    cin >> n >> a >> b;
    fill(val, val + n + 5, INT_MAX);

    for (int i = 0; i < n; i++)
        cin >> y[i];

    for (int i = 0; i < (1 << n); i++)
    {
        int splits = 0, curr = 0, res = 0;

        for (int j = 0; j < n; j++)
        {
            if (i & (1LL << j))
                splits++, res |= curr, curr = 0;
            curr += y[j];
        }

        res |= curr;

        val[splits] = min(val[splits], res);
    }

    int out = INT_MAX;
    for (int i = a; i <= b; i++)
        out = min(out, val[i]);

    cout << out << '\n';

    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...