Submission #2302463


Source Code Expand

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int n, dp[5009], L[5009], L1[5009][5009], L2[5009][5009]; bool I[5009][5009]; string S;

bool ispal(int l, int r) {
	int m = (l + r + 1) / 2;
	long long V1 = L1[l][m - 1];
	long long V2 = L2[m][r]; if ((r - l) % 2 == 0) V2 = L2[m + 1][r];
	
	if (V1 == V2) return true;
	return false;
}

int main() {
	cin >> n >> S;
	for (int i = 0; i < S.size(); i++) {
		int Z = 0;
		for (int j = i; j < S.size(); j++) {
			Z *= 29LL;
			Z += (S[j] - 'a' + 1);
			L1[i][j] = Z;
		}
		int ZZ = 0;
		for (int j = i; j >= 0; j--) {
			ZZ *= 29LL;
			ZZ += (S[j] - 'a' + 1);
			L2[j][i] = ZZ;
		}
	}
	for (int i = 1; i <= n; i++) cin >> L[i];
	for (int i = 1; i <= n; i++) dp[i] = (1LL << 60);
	for (int i = 1; i <= S.size(); i++) {
		for (int j = 0; j < i; j++) {
			if (ispal(j, i - 1) == false) continue;
			dp[i] = min(dp[i], dp[j] + L[i - j]);
		}
	}
	cout << dp[n] << endl;
	return 0;
}

Submission Info

Submission Time
Task C - Palindrome Concatenation
User E869120
Language C++14 (GCC 5.4.1)
Score 0
Code Size 996 Byte
Status WA
Exec Time 238 ms
Memory 197120 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:34:37: warning: overflow in implicit constant conversion [-Woverflow]
  for (int i = 1; i <= n; i++) dp[i] = (1LL << 60);
                                     ^

Judge Result

Set Name Sample Dataset1 Dataset2
Score / Max Score 0 / 0 0 / 40 0 / 60
Status
WA × 3
WA × 24
WA × 48
Set Name Test Cases
Sample sample-01.txt, sample-02.txt, sample-03.txt
Dataset1 sample-01.txt, sample-02.txt, sample-03.txt, 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt
Dataset2 01-01.txt, 01-02.txt, 01-03.txt, 01-04.txt, 01-05.txt, 01-06.txt, 01-07.txt, 01-08.txt, 01-09.txt, 01-10.txt, 01-11.txt, 01-12.txt, 01-13.txt, 01-14.txt, 01-15.txt, 01-16.txt, 01-17.txt, 01-18.txt, 01-19.txt, 01-20.txt, 01-21.txt, 02-01.txt, 02-02.txt, 02-03.txt, 02-04.txt, 02-05.txt, 02-06.txt, 02-07.txt, 02-08.txt, 02-09.txt, 02-10.txt, 02-11.txt, 02-12.txt, 02-13.txt, 02-14.txt, 02-15.txt, 02-16.txt, 02-17.txt, 02-18.txt, 02-19.txt, 02-20.txt, 02-21.txt, 02-22.txt, 02-23.txt, 02-24.txt, sample-01.txt, sample-02.txt, sample-03.txt
Case Name Status Exec Time Memory
01-01.txt WA 2 ms 4352 KB
01-02.txt WA 2 ms 4352 KB
01-03.txt WA 3 ms 8448 KB
01-04.txt WA 4 ms 12544 KB
01-05.txt WA 4 ms 12544 KB
01-06.txt WA 4 ms 12544 KB
01-07.txt WA 4 ms 12544 KB
01-08.txt WA 4 ms 12544 KB
01-09.txt WA 4 ms 12544 KB
01-10.txt WA 4 ms 12544 KB
01-11.txt WA 4 ms 12544 KB
01-12.txt WA 4 ms 12544 KB
01-13.txt WA 4 ms 12544 KB
01-14.txt WA 4 ms 12544 KB
01-15.txt WA 4 ms 12544 KB
01-16.txt WA 4 ms 12544 KB
01-17.txt WA 4 ms 12544 KB
01-18.txt WA 4 ms 12544 KB
01-19.txt WA 4 ms 12544 KB
01-20.txt WA 4 ms 12544 KB
01-21.txt WA 4 ms 12544 KB
02-01.txt WA 16 ms 45312 KB
02-02.txt WA 44 ms 84224 KB
02-03.txt WA 82 ms 119040 KB
02-04.txt WA 217 ms 197120 KB
02-05.txt WA 238 ms 197120 KB
02-06.txt WA 221 ms 197120 KB
02-07.txt WA 219 ms 197120 KB
02-08.txt WA 238 ms 197120 KB
02-09.txt WA 218 ms 197120 KB
02-10.txt WA 218 ms 197120 KB
02-11.txt WA 216 ms 197120 KB
02-12.txt WA 216 ms 197120 KB
02-13.txt WA 216 ms 197120 KB
02-14.txt WA 215 ms 197120 KB
02-15.txt WA 215 ms 197120 KB
02-16.txt WA 215 ms 197120 KB
02-17.txt WA 216 ms 197120 KB
02-18.txt WA 215 ms 197120 KB
02-19.txt WA 215 ms 197120 KB
02-20.txt WA 215 ms 197120 KB
02-21.txt WA 216 ms 197120 KB
02-22.txt WA 216 ms 197120 KB
02-23.txt WA 226 ms 197120 KB
02-24.txt WA 226 ms 197120 KB
sample-01.txt WA 2 ms 6400 KB
sample-02.txt WA 2 ms 6400 KB
sample-03.txt WA 2 ms 6400 KB