15112022-11-21 18:27:46lacitoDNScpp11Wrong answer 34/4013ms6980 KiB
#include <bits/stdc++.h>
using namespace std;

string s;
int maxi;

void leghossz(char c) {
	vector<int> elsolegk;
	int szam = 0;
	for (int i = 0; i < s.length(); i++) {
		if (s[i] == c) {
			szam++;
			if (szam >= 0) {
				if (i + 1 > maxi) maxi = i + 1;
			} else {
				if (maxi < i - elsolegk[abs(szam)] + 1) {
					maxi = i - elsolegk[abs(szam)] + 1;
				}
			}
		} else {
			szam--;
			if (szam >= 0) {
				if (i + 1 > maxi) maxi = i + 1;
			} else if (szam < 0 && elsolegk.size() < abs(szam)) {
				elsolegk.push_back(i);
			}
		}
	}
}

int main() {
	cin >> s;
	
	leghossz('A');
	leghossz('C');
	leghossz('G');
	leghossz('T');
	cout << maxi << endl;
	
}
SubtaskSumTestVerdictTimeMemory
base34/40
1Accepted0/03ms1844 KiB
2Wrong answer0/013ms4380 KiB
3Wrong answer0/22ms2108 KiB
4Accepted2/22ms2324 KiB
5Wrong answer0/22ms2512 KiB
6Accepted2/22ms2716 KiB
7Wrong answer0/22ms2796 KiB
8Accepted4/44ms3556 KiB
9Accepted4/46ms4152 KiB
10Accepted4/47ms4208 KiB
11Accepted4/48ms4716 KiB
12Accepted4/48ms6272 KiB
13Accepted5/510ms6956 KiB
14Accepted5/510ms6980 KiB