Submission #279927

# Submission time Handle Problem Language Result Execution time Memory
279927 2020-08-22T12:05:45 Z mvanaltvorst Palindromic Partitions (CEOI17_palindromic) C++17
60 / 100
10000 ms 6440 KB
#include <iostream>
#include <string>
#include <vector>

using namespace std;

bool isPalindrome(vector<char> &lbuf, vector<char> &rbuf, int len) {
	int i = 0;
	int j = len - 1;
	while (j >= 0) {
		if (lbuf[i] != rbuf[j]) return false;
		j--;
		i++;
	}
	return true;
}

int main() {
	int t;
	cin >> t;
	for (int z = 0; z < t; z++) {
		string input;
		cin >> input;

		int l = 0, r = input.size() - 1;
		vector<char> lbuf;
		vector<char> rbuf;
		int bufSize = 0;
		int ans = 1;
		while (l < r) {
			lbuf.push_back(input[l]);
			rbuf.push_back(input[r]);
			bufSize++;
			l++;
			r--;
			if (isPalindrome(lbuf, rbuf, bufSize)) {
				// cout << l - bufSize << ", " << r + 1 << ": " << bufSize << endl;
				if (l == r+1) {ans ++;} else { ans += 2; }
				lbuf.clear();
				rbuf.clear();
				bufSize = 0;
			}
		}
		cout << ans << endl;
	}
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 256 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 256 KB Output is correct
9 Correct 1 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 256 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 256 KB Output is correct
9 Correct 1 ms 256 KB Output is correct
10 Correct 32 ms 512 KB Output is correct
11 Correct 9 ms 384 KB Output is correct
12 Correct 6 ms 384 KB Output is correct
13 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 0 ms 256 KB Output is correct
5 Correct 1 ms 256 KB Output is correct
6 Correct 1 ms 256 KB Output is correct
7 Correct 1 ms 384 KB Output is correct
8 Correct 1 ms 256 KB Output is correct
9 Correct 1 ms 256 KB Output is correct
10 Correct 32 ms 512 KB Output is correct
11 Correct 9 ms 384 KB Output is correct
12 Correct 6 ms 384 KB Output is correct
13 Correct 5 ms 384 KB Output is correct
14 Execution timed out 10026 ms 6440 KB Time limit exceeded
15 Halted 0 ms 0 KB -