179292025-09-23 19:18:41algoproDNS szakaszok száma (75 pont)pypy3Runtime error 71/7575ms32000 KiB
# UUID: c23cb63a-eb5c-448f-8fcf-c75f0d3b6c81

"""
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 = []
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)
SubtaskSumTestVerdictTimeMemory
base71/75
1Accepted0/043ms19372 KiB
2Accepted0/072ms28808 KiB
3Accepted3/339ms19436 KiB
4Accepted4/439ms19396 KiB
5Accepted4/443ms19588 KiB
6Accepted4/443ms19564 KiB
7Accepted4/439ms19548 KiB
8Accepted3/339ms19424 KiB
9Accepted3/339ms19436 KiB
10Accepted4/443ms19768 KiB
11Accepted4/445ms19936 KiB
12Accepted4/439ms19944 KiB
13Accepted4/448ms21224 KiB
14Accepted4/439ms19948 KiB
15Accepted3/364ms28844 KiB
16Accepted4/472ms29020 KiB
17Accepted4/474ms28844 KiB
18Accepted4/464ms28640 KiB
19Runtime error0/459ms32000 KiB
20Accepted4/475ms29360 KiB
21Accepted3/372ms30560 KiB
22Accepted4/464ms29992 KiB