7347 2024. 01. 08 08:41:28 anon DNS cpp17 Elfogadva 40/40 12ms 10472 KiB
#include <bits/stdc++.h>
#define FastIO ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL)
using namespace std;
typedef long long ll;
int main() {
    FastIO;
    ll i, j, cntr, ans, N;
    string dns;
    cin >> dns;
    N = dns.size();
    ans = 1;
    for(i = 0; i < 4; i++) {
        vector<ll> same(N * 2 + 1, -1);
        cntr = N;
        for(j = 0; j < N; j++) {
            cntr += (dns[j] == "ACGT"[i]) * 2 - 1;
            if(same[cntr] == -1)
                same[cntr] = j;
            else
                ans = max(ans, j - same[cntr]);
        }
        while(cntr > N) {
            cntr--;
            if(same[cntr] != -1)
                ans = max(ans, j - same[cntr]);
            j++;
        }
    }
    ans = min(ans, N);
    cout << ans << '\n';
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 40/40
1 Elfogadva 0/0 3ms 1864 KiB
2 Elfogadva 0/0 12ms 8892 KiB
3 Elfogadva 2/2 3ms 2388 KiB
4 Elfogadva 2/2 3ms 2460 KiB
5 Elfogadva 2/2 3ms 2616 KiB
6 Elfogadva 2/2 3ms 2844 KiB
7 Elfogadva 2/2 3ms 2956 KiB
8 Elfogadva 4/4 4ms 5068 KiB
9 Elfogadva 4/4 4ms 6236 KiB
10 Elfogadva 4/4 6ms 6972 KiB
11 Elfogadva 4/4 7ms 7964 KiB
12 Elfogadva 4/4 7ms 8408 KiB
13 Elfogadva 5/5 8ms 9428 KiB
14 Elfogadva 5/5 8ms 10472 KiB