198302025-12-24 18:07:50birozsDinamitpython3Wrong answer 0/5018ms3396 KiB
N,M,K = map(int,input().split())
T = []
for _ in range(N):
    sor = list(map(int,input().split()))
    T.append(sor)
#Q[i][j] a minimális érték a bal felső saroktól az adott pontig
Q = []
sor = [0] * M
for _ in range(N):
    Q.append(sor)
sor = ["*"] * M
#honnan[i][j] a minimális érték eléréséhez az adott pontba honnan érkezünk
honnan = []
for _ in range(N):
    honnan.append(sor[:])
#Q első sorának j-edik eleme az első j szám összege
Q[0][0] = T[0][0]
for j in range(1,M):
    Q[0][j] = Q[0][j-1] + T[0][j]
    honnan[0][j] = "B"
#Q első oszlopának i-edik eleme az első i szám összege
for i in range(1,N):
    Q[i][0] = Q[i-1][0] + T[i][0]
    honnan[i][0] = "F"

#Q belső pontjai a felette és a bal szomszéd értékeinek minimuma + a pont értéke
for i in range(1,N):
    for j in range(1,M):
        if Q[i][j-1] < Q[i-1][j]:
            Q[i][j] = Q[i][j-1] + T[i][j]
            honnan[i][j] = "B"
        else:
            Q[i][j] = Q[i-1][j] + T[i][j]
            honnan[i][j] = "F"

#A mimimális út visszafejtése
ut = [T[N-1][M-1]]
sor = N - 1
oszlop = M - 1
akt = honnan[N-1][M-1]
while akt != "*":
    if akt == "B":
        oszlop -= 1
    else:
        sor -= 1
    ut = [T[sor][oszlop]] + ut[:]
    akt = honnan[sor][oszlop]
print(ut)
#Kiválasztjuk a maximális elemet, azt felezzük
for _ in range(K):
    maxpoz = ut.index(max(ut))
    ut[maxpoz] = ut[maxpoz] // 2
print(sum(ut))

SubtaskSumTestVerdictTimeMemory
base0/50
1Wrong answer0/016ms3324 KiB
2Wrong answer0/017ms3136 KiB
3Wrong answer0/217ms3388 KiB
4Wrong answer0/217ms3372 KiB
5Wrong answer0/318ms3172 KiB
6Wrong answer0/317ms3320 KiB
7Wrong answer0/217ms3368 KiB
8Wrong answer0/317ms3380 KiB
9Wrong answer0/216ms3228 KiB
10Wrong answer0/216ms3204 KiB
11Wrong answer0/316ms3124 KiB
12Wrong answer0/317ms3124 KiB
13Wrong answer0/217ms3288 KiB
14Wrong answer0/317ms3208 KiB
15Wrong answer0/217ms3372 KiB
16Wrong answer0/318ms3276 KiB
17Wrong answer0/218ms3380 KiB
18Wrong answer0/318ms3380 KiB
19Wrong answer0/217ms3396 KiB
20Wrong answer0/318ms3284 KiB
21Wrong answer0/217ms3380 KiB
22Wrong answer0/317ms3224 KiB