192922025-12-03 18:08:03algoproDNS szakaszok száma (75 pont)cpp17Időlimit túllépés 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;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base45/75
1Elfogadva0/01ms500 KiB
2Időlimit túllépés0/0293ms820 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva4/41ms316 KiB
5Elfogadva4/41ms316 KiB
6Elfogadva4/41ms316 KiB
7Elfogadva4/41ms316 KiB
8Elfogadva3/32ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva4/41ms316 KiB
11Elfogadva4/41ms316 KiB
12Elfogadva4/41ms316 KiB
13Elfogadva4/42ms316 KiB
14Elfogadva4/41ms328 KiB
15Időlimit túllépés0/3300ms820 KiB
16Időlimit túllépés0/4300ms820 KiB
17Időlimit túllépés0/4300ms820 KiB
18Időlimit túllépés0/4277ms824 KiB
19Időlimit túllépés0/4287ms820 KiB
20Időlimit túllépés0/4287ms868 KiB
21Időlimit túllépés0/3300ms820 KiB
22Időlimit túllépés0/4284ms820 KiB