9659 2024. 02. 23 18:17:18 NagyLeo Toronyépítés (1,1,3,3) python3 Időlimit túllépés 38/50 232ms 13312 KiB
from sys import setrecursionlimit, stdout

setrecursionlimit(10**9)

memo={}

def main2():
    N = int(input())

    def torony(magassag):
        if magassag == 0:
            return 0
        if magassag == 1:
            return 2
        if magassag == 2:
            return 4
        if magassag == 3:
            return 8+2
        if magassag in memo:
            return memo[magassag]
        res=0
        res += 2*torony(magassag-1)
        if magassag >= 3:
            res += 2*torony(magassag - 3)
        memo[magassag]=res%20210108
        return res%20210108

    print(torony(N))

#main2()

def main():

    N = int(input())

    if N == 0:
        return 0
    if N == 1:
        return 2
    if N == 2:
        return 4
    if N == 3:
        return 8+2
    a,b,c=2,4,10
    for i in range(N-3):
        # 2 ,4 ,10 , ?
        # 2*10+2*2=24
        a,b,c=b,c,(2*c+2*a)%20210108
    return c

stdout.write(str(main()))
Részfeladat Összpont Teszt Verdikt Idő Memória
base 38/50
1 Elfogadva 0/0 17ms 11108 KiB
2 Elfogadva 0/0 17ms 11632 KiB
3 Elfogadva 3/3 18ms 11816 KiB
4 Elfogadva 3/3 17ms 11892 KiB
5 Elfogadva 4/4 17ms 12292 KiB
6 Elfogadva 4/4 17ms 12492 KiB
7 Időlimit túllépés 0/4 232ms 12524 KiB
8 Elfogadva 4/4 43ms 12588 KiB
9 Elfogadva 4/4 17ms 12784 KiB
10 Elfogadva 4/4 17ms 12856 KiB
11 Elfogadva 4/4 61ms 13044 KiB
12 Időlimit túllépés 0/4 231ms 13104 KiB
13 Időlimit túllépés 0/4 206ms 13312 KiB
14 Elfogadva 4/4 90ms 13152 KiB
15 Elfogadva 2/2 17ms 13276 KiB
16 Elfogadva 2/2 17ms 13184 KiB