6689 2023. 12. 16 18:45:06 111 DNS cpp17 Elfogadva 40/40 12ms 10564 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define double long double

#define pii pair<int, int>

signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
#ifdef CB
	freopen("be2.txt", "r", stdin);
//	freopen("out.txt", "w", stdout);
#endif
	string S;
	cin >> S;
	int N = S.size();
	int ans = 0;
	for (char c : {'A', 'C', 'G', 'T'}) {
		vector<int> m(N * 2 + 1, -1);
		int a = N;
		for (int i = 0; i < N; i++) {
			a += (S[i] == c) * 2 - 1;
			if (a > 0) {
				if (m[a] != -1) {
					ans = max(ans, i - m[a]);
				}
				else {
					m[a] = i;
				}
			}
		}
		if (a >= N) {
			ans = N;
		}
	}
	cout << ans << '\n';
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 40/40
1 Elfogadva 0/0 3ms 1700 KiB
2 Elfogadva 0/0 12ms 8880 KiB
3 Elfogadva 2/2 3ms 2072 KiB
4 Elfogadva 2/2 3ms 2284 KiB
5 Elfogadva 2/2 3ms 2496 KiB
6 Elfogadva 2/2 3ms 2720 KiB
7 Elfogadva 2/2 3ms 2824 KiB
8 Elfogadva 4/4 4ms 4812 KiB
9 Elfogadva 4/4 4ms 6252 KiB
10 Elfogadva 4/4 6ms 7128 KiB
11 Elfogadva 4/4 7ms 8244 KiB
12 Elfogadva 4/4 7ms 8468 KiB
13 Elfogadva 5/5 8ms 9740 KiB
14 Elfogadva 5/5 8ms 10564 KiB