Submission #2139508
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
const int MaxN = 300;
const int MaxM = 300;
int n, m;
char s[MaxN + 2];
int f[MaxN + 1][MaxN + 1][MaxM + 1];
int main()
{
cin >> s + 1 >> m;
n = strlen(s + 1);
for (int i = 1; i <= n; ++i)
for (int j = 0; j <= m; ++j)
f[i][i][j] = 1;
for (int i = 1; i < n; ++i)
{
f[i][i + 1][0] = 1 + (s[i] == s[i + 1]);
for (int j = 1; j <= m; ++j)
f[i][i + 1][j] = 2;
}
for (int k = 3; k <= n; ++k)
for (int l = 1; l <= n - k + 1; ++l)
{
int r = l + k - 1;
for (int i = 0; i <= m; ++i)
{
int j = i - (s[l] != s[r]);
int w = j >= 0 ? f[l + 1][r - 1][j] + 2 : -1;
f[l][r][i] = max(f[l + 1][r][i], f[l][r - 1][i]);
f[l][r][i] = max(f[l][r][i], w);
}
}
cout << f[1][n][m] << endl;
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - Reversed LCS |
| User | InvUsr |
| Language | C++14 (GCC 5.4.1) |
| Score | 900 |
| Code Size | 825 Byte |
| Status | AC |
| Exec Time | 51 ms |
| Memory | 106368 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 900 / 900 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | s1.txt, s2.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, 41.txt, 42.txt, 43.txt, 44.txt, 45.txt, 46.txt, 47.txt, s1.txt, s2.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01.txt | AC | 26 ms | 106368 KiB |
| 02.txt | AC | 43 ms | 106368 KiB |
| 03.txt | AC | 32 ms | 106368 KiB |
| 04.txt | AC | 27 ms | 106368 KiB |
| 05.txt | AC | 35 ms | 106368 KiB |
| 06.txt | AC | 26 ms | 106368 KiB |
| 07.txt | AC | 51 ms | 106368 KiB |
| 08.txt | AC | 44 ms | 106368 KiB |
| 09.txt | AC | 26 ms | 106368 KiB |
| 10.txt | AC | 50 ms | 106368 KiB |
| 11.txt | AC | 35 ms | 106368 KiB |
| 12.txt | AC | 29 ms | 106368 KiB |
| 13.txt | AC | 25 ms | 106368 KiB |
| 14.txt | AC | 50 ms | 106368 KiB |
| 15.txt | AC | 35 ms | 106368 KiB |
| 16.txt | AC | 27 ms | 106368 KiB |
| 17.txt | AC | 29 ms | 106368 KiB |
| 18.txt | AC | 33 ms | 106368 KiB |
| 19.txt | AC | 32 ms | 106368 KiB |
| 20.txt | AC | 44 ms | 106368 KiB |
| 21.txt | AC | 26 ms | 106368 KiB |
| 22.txt | AC | 32 ms | 106368 KiB |
| 23.txt | AC | 26 ms | 106368 KiB |
| 24.txt | AC | 27 ms | 106368 KiB |
| 25.txt | AC | 26 ms | 106368 KiB |
| 26.txt | AC | 26 ms | 106368 KiB |
| 27.txt | AC | 26 ms | 106368 KiB |
| 28.txt | AC | 35 ms | 106368 KiB |
| 29.txt | AC | 26 ms | 106368 KiB |
| 30.txt | AC | 27 ms | 106368 KiB |
| 31.txt | AC | 26 ms | 106368 KiB |
| 32.txt | AC | 26 ms | 106368 KiB |
| 33.txt | AC | 26 ms | 106368 KiB |
| 34.txt | AC | 26 ms | 106368 KiB |
| 35.txt | AC | 26 ms | 106368 KiB |
| 36.txt | AC | 36 ms | 106368 KiB |
| 37.txt | AC | 26 ms | 106368 KiB |
| 38.txt | AC | 51 ms | 106368 KiB |
| 39.txt | AC | 26 ms | 106368 KiB |
| 40.txt | AC | 35 ms | 106368 KiB |
| 41.txt | AC | 1 ms | 256 KiB |
| 42.txt | AC | 1 ms | 256 KiB |
| 43.txt | AC | 51 ms | 106368 KiB |
| 44.txt | AC | 1 ms | 256 KiB |
| 45.txt | AC | 1 ms | 256 KiB |
| 46.txt | AC | 1 ms | 256 KiB |
| 47.txt | AC | 1 ms | 256 KiB |
| s1.txt | AC | 2 ms | 2304 KiB |
| s2.txt | AC | 2 ms | 6528 KiB |