| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 846102 | vjudge1 | Bali Sculptures (APIO15_sculpture) | C++17 | 63 ms | 756 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define ll long long
#define ld long double
#define eb emplace_back
#define task ""
#define fast ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define nx freopen (task".inp","r",stdin), freopen (task".out","w",stdout);
#define fi first
#define se second
#define pii pair <int, int>
#define tii tuple <int, int, int>
#define bit(mask, i) ((mask) >> (i) & 1)
using namespace std;
const int nmax = 2002;
int n, a, b;
ll pref[nmax];
bool dp[102][102];
ll sum(int i, int j)
{
return pref[j] - pref[i - 1];
}
void sub1234()
{
ll res = 137438953471;
for (int k = 36; k >= 0; --k)
{
memset(dp, 0, sizeof dp);
dp[0][0] = 1;
res ^= (1LL << k);
for (int i = 1; i <= n; ++i)
for (int group = 1; group <= b; ++group)
for (int j = 1; j <= i; ++j)
if ((sum(j, i) & res) == sum(j, i))
dp[i][group] |= dp[j - 1][group - 1];
bool ok = 0;
for (int group = a; group <= b; ++group)
ok |= (dp[n][group]);
if (!ok) res ^= (1LL << k);
}
cout << res;
}
ll dp5[nmax];
void sub5()
{
ll res = (1LL << 41) - 1;
for (int k = 40; k >= 0; --k)
{
res ^= (1LL << k);
memset(dp5, 0x3f, sizeof dp5);
dp5[0] = 0;
for (int i = 1; i <= n; ++i)
{
for (int j = 1; j <= i; ++j)
{
if ((sum(j, i) & res) == sum(j, i))
dp5[i] = min(dp5[i], dp5[j - 1] + 1);
}
}
if (dp5[n] > b) res ^= (1LL << k);
}
cout << res;
exit(0);
}
int main()
{
if (ifstream(task".inp")) nx
fast
cin >> n >> a >> b;
for (int y, i = 1; i <= n; ++i)
cin >> y, pref[i] = pref[i - 1] + y;
if (a == 1) sub5();
sub1234();
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
