87922024-01-30 19:43:26KezdőBináris fa magassága (50 pont)python3Time limit exceeded 20/50600ms13100 KiB
from sys import stdin,stdout

def main():
    N,M = [int(i) for i in stdin.readline().split()]
    f = [0,0]+[1]*(2**N-2)
    h = [0]*2**(N-1) + [N-1]*2**(N-1)
    u = 2**(N-1)
    #print(f)

    def holvan(x):
        s = 1
        while x >= 2**s:
            s += 1
        return s

    for i in range(M):
        a,uj = [int(i) for i in stdin.readline().split()]
        b = uj-f[a]
        f[a] = uj
        sor = holvan(a)
        le = N-sor
        maxi = N-1
        for i in range(a*2**le,a*2**le+2**le):
            h[i] += b
        maxi = max(h[u:])
        stdout.write(str(maxi)+'\n')
main()    
SubtaskSumTestVerdictTimeMemory
base20/50
1Accepted0/017ms11304 KiB
2Time limit exceeded0/0556ms6272 KiB
3Accepted2/220ms11800 KiB
4Accepted2/220ms12112 KiB
5Accepted2/221ms12264 KiB
6Accepted2/221ms12188 KiB
7Accepted3/324ms12528 KiB
8Accepted3/326ms12644 KiB
9Accepted3/328ms13044 KiB
10Accepted3/328ms13100 KiB
11Time limit exceeded0/2564ms6940 KiB
12Time limit exceeded0/2572ms7168 KiB
13Time limit exceeded0/2579ms7388 KiB
14Time limit exceeded0/2555ms7520 KiB
15Time limit exceeded0/2572ms7804 KiB
16Time limit exceeded0/2575ms8512 KiB
17Time limit exceeded0/2563ms8504 KiB
18Time limit exceeded0/2564ms8796 KiB
19Time limit exceeded0/2572ms8716 KiB
20Time limit exceeded0/3560ms8088 KiB
21Time limit exceeded0/3564ms8264 KiB
22Time limit exceeded0/3600ms8288 KiB
23Time limit exceeded0/3560ms8324 KiB