207202026-01-08 18:13:22algoproDNScpp17Wrong answer 20/409ms1856 KiB
// UUID: d9bcd8fb-484f-4c26-abb3-a11a5840641c
#include <bits/stdc++.h>
using namespace std;

int main() {
	int longest = 0;
	string s;cin >> s;
	vector<int> p(s.size() + 1);
	for (int i = 1;i <= s.size();i++) {
		if (s[i - 1] == 'A') p[i] = (p[i - 1] + 1);
		else p[i] = (p[i - 1] - 1);
	}
	vector<int> first;
	for (int i = 0;i < p.size();i++) {
		if (-p[i] > first.size()) {
			first.push_back(i - 1);
		}
	}
	for (int i = 0;i < s.size() + 1;i++) {
		if (p[i] >= 0) longest = max(longest, i);
		else longest = max(longest, i - first[-p[i] - 1] - 1);
	}
	cout << longest;

}
SubtaskSumTestVerdictTimeMemory
base20/40
1Wrong answer0/02ms512 KiB
2Wrong answer0/09ms1856 KiB
3Accepted2/22ms316 KiB
4Wrong answer0/21ms316 KiB
5Wrong answer0/21ms316 KiB
6Wrong answer0/21ms316 KiB
7Wrong answer0/21ms316 KiB
8Accepted4/43ms820 KiB
9Wrong answer0/44ms1080 KiB
10Wrong answer0/44ms1288 KiB
11Wrong answer0/46ms1676 KiB
12Accepted4/44ms1224 KiB
13Accepted5/56ms1220 KiB
14Accepted5/57ms1316 KiB