192922025-12-03 18:08:03algoproDNS szakaszok száma (75 pont)cpp17Time limit exceeded 45/75300ms868 KiB
// UUID: a0d67ea5-d22a-46ee-879b-c1bd9f84c59d
#include <bits/stdc++.h>
using namespace std;
//#define int long long
//#define INT_MIN LLONG_MIN
//#define INT_MAX LLONG_MAX

// "szakasz" mint substr
int32_t main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    int n;
	string s;
    cin >> n >> s;
    //for (uint32_t i=0; i<n; i++) if (s[i]=='A') for (uint32_t j=i+1; j<n; j++) if (s[j]=='T'&&(s.substr(i,j-i+1).find('G')!=string::npos)) c++;                             
    vector<int> nextG(n+1, n);
    for (int i = n-1; i >= 0; i--) {
        if (s[i] == 'G') nextG[i] = i;
        else nextG[i] = nextG[i+1];
    }
    long long res = 0;
    for (int i = 0; i < n; i++) {
        if (s[i] != 'A') continue;
        for (int j = i; j < n; j++) {
            if (s[j] != 'T') continue;
            if (nextG[i] <= j) res++;
        }
    }

    cout << res;
}
SubtaskSumTestVerdictTimeMemory
base45/75
1Accepted0/01ms500 KiB
2Time limit exceeded0/0293ms820 KiB
3Accepted3/31ms316 KiB
4Accepted4/41ms316 KiB
5Accepted4/41ms316 KiB
6Accepted4/41ms316 KiB
7Accepted4/41ms316 KiB
8Accepted3/32ms316 KiB
9Accepted3/31ms316 KiB
10Accepted4/41ms316 KiB
11Accepted4/41ms316 KiB
12Accepted4/41ms316 KiB
13Accepted4/42ms316 KiB
14Accepted4/41ms328 KiB
15Time limit exceeded0/3300ms820 KiB
16Time limit exceeded0/4300ms820 KiB
17Time limit exceeded0/4300ms820 KiB
18Time limit exceeded0/4277ms824 KiB
19Time limit exceeded0/4287ms820 KiB
20Time limit exceeded0/4287ms868 KiB
21Time limit exceeded0/3300ms820 KiB
22Time limit exceeded0/4284ms820 KiB