179332025-09-23 19:28:25algoproDNS szakaszok száma (75 pont)pypy3Hibás válasz 3/7567ms28468 KiB
# UUID: c83d1bda-1cf0-4ab3-b581-2445e1c48e8d

"""
hossz = int(input())
dns = str(input())
van = False
eset = 0
for i in range(hossz):
    if dns[i] == "A":
        van = False
        for j in range(i, hossz):
            if dns[j] == "G":
                van = True
            if dns[j] == "T" and van:
                eset += 1
print(eset)



hossz = int(input())
dns = str(input())
eset = 0
for i in range(hossz):
    if dns[i] == "A":
        g = 0
        for j in range(i, hossz):
            if dns[j] == "G":
                g = 1
            if dns[j] == "T" and g == 1:
                eset += 1
print(eset)
erre a peldara:
CAGTAATTGATA
hany A betu van egy adott karakter elott?
011123333445 <- ez lesz az A lista
Es melyik az elottt levo G indexe
CAGTAATTGATA
xx2222228888 <- az elott levo G betu indexe, ha x=-1, akkor ez egy listaban tarolhato
es ezek utan amikor vegigmegyunk 3-adszorra a stringen:
CAGTAATTGATA
   T <- egy T betu
   3-as indexu helyen
   G[3] megmondja, hogy hol van elotte eloszor G betu
   A[G[3]] megmondja, hogy hany A betu van elotte
      T 6-os indexen
      A[G[6]]-tal novelni kell a valaszt
      stb

"""


hossz = int(input())
dns = str(input())
A = []
a = 0
for i in range(hossz):
    if dns[i] == "A":
        a += 1
    A.append(a)
#print(A)#eddig jonak tunik
G=[-1]*hossz
"""
G = []
g = -1
for i in range(hossz):
    if dns[i] == "G":
        g = i
    G.append(g)
#print(G)
"""
megoldas = 0
for i in range(hossz):
    if dns[i] == "T":
        if G[i] != -1: # a -1 azt jelenti, hogy nincs elotte G azaz jo
            megoldas += A[G[i]]
        #print(i, G[i], A[i], A[G[i]])
print(megoldas)
RészfeladatÖsszpontTesztVerdiktIdőMemória
base3/75
1Hibás válasz0/039ms19540 KiB
2Hibás válasz0/064ms28408 KiB
3Elfogadva3/343ms19556 KiB
4Hibás válasz0/439ms19412 KiB
5Hibás válasz0/439ms19436 KiB
6Hibás válasz0/439ms19472 KiB
7Hibás válasz0/437ms19360 KiB
8Hibás válasz0/346ms19436 KiB
9Hibás válasz0/343ms19560 KiB
10Hibás válasz0/443ms19676 KiB
11Hibás válasz0/439ms19760 KiB
12Hibás válasz0/446ms19788 KiB
13Hibás válasz0/439ms19632 KiB
14Hibás válasz0/443ms19596 KiB
15Hibás válasz0/356ms28224 KiB
16Hibás válasz0/464ms28388 KiB
17Hibás válasz0/457ms28392 KiB
18Hibás válasz0/464ms28364 KiB
19Hibás válasz0/457ms28368 KiB
20Hibás válasz0/465ms28304 KiB
21Hibás válasz0/367ms28468 KiB
22Hibás válasz0/456ms28344 KiB