Submission #64582361
Source Code Expand
#include <bits/stdc++.h>
#define int long long
using namespace std;
constexpr int MAXN = 810;
int n, c[MAXN], x[MAXN], dp[MAXN][MAXN];
inline void chkmin (int &x, int y) { if (x > y) x = y; }
signed main() {
cin.tie(0) -> sync_with_stdio(0);
cout.tie(0) -> sync_with_stdio(0);
cin >> n;
for (int i = 1; i <= n; i ++) cin >> c[i], c[i + n] = c[i];
for (int i = 1; i <= n; i ++) cin >> x[i];
for (int i = 1; i <= (n << 1); i ++)
dp[i][i] = 1 + x[c[i]];
for (int i = 1; i < (n << 1); i ++)
dp[i][i + 1] = 2 + (c[i] == c[i + 1] ? x[c[i]] : x[c[i]] + x[c[i + 1]]);
for (int len = 3; len <= n; len ++) {
for (int l = 1; l + len - 1 <= (n << 1); l ++) {
int r = l + len - 1;
dp[l][r] = 1e18;
chkmin (dp[l][r], dp[l + 1][r] + x[c[l]] + 1);
chkmin (dp[l][r], dp[l][r - 1] + x[c[r]] + 1);
if (c[l] == c[r]) {
chkmin (dp[l][r], dp[l + 1][r - 1] + len + x[c[l]]);
for (int k = l + 1; k < r; k ++) if (c[k] == c[l])
chkmin (dp[l][r], dp[l][k] + dp[k + 1][r - 1] + r - k);
}
for (int k = l; k < r; k ++)
chkmin (dp[l][r], dp[l][k] + dp[k + 1][r]);
}
}
int Answer = 3e18;
for (int i = 1; i <= n; i ++)
chkmin (Answer, dp[i][i + n - 1]);
cout << Answer << '\n';
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | F - Happy Birthday! 3 |
| User | YZP_AK_IOI |
| Language | C++ 20 (gcc 12.2) |
| Score | 550 |
| Code Size | 1222 Byte |
| Status | AC |
| Exec Time | 89 ms |
| Memory | 8372 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 550 / 550 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample00.txt, sample01.txt, sample02.txt |
| All | sample00.txt, sample01.txt, sample02.txt, testcase00.txt, testcase01.txt, testcase02.txt, testcase03.txt, testcase04.txt, testcase05.txt, testcase06.txt, testcase07.txt, testcase08.txt, testcase09.txt, testcase10.txt, testcase11.txt, testcase12.txt, testcase13.txt, testcase14.txt, testcase15.txt, testcase16.txt, testcase17.txt, testcase18.txt, testcase19.txt, testcase20.txt, testcase21.txt, testcase22.txt, testcase23.txt, testcase24.txt, testcase25.txt, testcase26.txt, testcase27.txt, testcase28.txt, testcase29.txt, testcase30.txt, testcase31.txt, testcase32.txt, testcase33.txt, testcase34.txt, testcase35.txt, testcase36.txt, testcase37.txt, testcase38.txt, testcase39.txt, testcase40.txt, testcase41.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| sample00.txt | AC | 1 ms | 3472 KiB |
| sample01.txt | AC | 1 ms | 3616 KiB |
| sample02.txt | AC | 1 ms | 3584 KiB |
| testcase00.txt | AC | 60 ms | 8244 KiB |
| testcase01.txt | AC | 60 ms | 8228 KiB |
| testcase02.txt | AC | 61 ms | 8104 KiB |
| testcase03.txt | AC | 43 ms | 8240 KiB |
| testcase04.txt | AC | 44 ms | 8244 KiB |
| testcase05.txt | AC | 43 ms | 8168 KiB |
| testcase06.txt | AC | 43 ms | 7140 KiB |
| testcase07.txt | AC | 87 ms | 8152 KiB |
| testcase08.txt | AC | 26 ms | 6320 KiB |
| testcase09.txt | AC | 88 ms | 8368 KiB |
| testcase10.txt | AC | 21 ms | 6208 KiB |
| testcase11.txt | AC | 89 ms | 8236 KiB |
| testcase12.txt | AC | 3 ms | 4596 KiB |
| testcase13.txt | AC | 67 ms | 8148 KiB |
| testcase14.txt | AC | 17 ms | 6020 KiB |
| testcase15.txt | AC | 69 ms | 8248 KiB |
| testcase16.txt | AC | 31 ms | 7096 KiB |
| testcase17.txt | AC | 70 ms | 8308 KiB |
| testcase18.txt | AC | 4 ms | 4764 KiB |
| testcase19.txt | AC | 59 ms | 8304 KiB |
| testcase20.txt | AC | 2 ms | 4416 KiB |
| testcase21.txt | AC | 59 ms | 8148 KiB |
| testcase22.txt | AC | 35 ms | 7268 KiB |
| testcase23.txt | AC | 63 ms | 8180 KiB |
| testcase24.txt | AC | 12 ms | 5828 KiB |
| testcase25.txt | AC | 56 ms | 8368 KiB |
| testcase26.txt | AC | 17 ms | 6296 KiB |
| testcase27.txt | AC | 57 ms | 8208 KiB |
| testcase28.txt | AC | 3 ms | 4616 KiB |
| testcase29.txt | AC | 59 ms | 8232 KiB |
| testcase30.txt | AC | 2 ms | 4512 KiB |
| testcase31.txt | AC | 44 ms | 8184 KiB |
| testcase32.txt | AC | 20 ms | 7008 KiB |
| testcase33.txt | AC | 44 ms | 8248 KiB |
| testcase34.txt | AC | 2 ms | 3968 KiB |
| testcase35.txt | AC | 44 ms | 8372 KiB |
| testcase36.txt | AC | 10 ms | 5944 KiB |
| testcase37.txt | AC | 44 ms | 8300 KiB |
| testcase38.txt | AC | 18 ms | 7040 KiB |
| testcase39.txt | AC | 43 ms | 8212 KiB |
| testcase40.txt | AC | 7 ms | 5648 KiB |
| testcase41.txt | AC | 43 ms | 8224 KiB |