Cod sursa(job #2715471)

Utilizator 05_YohnE1 La5c01 05_Yohn Data 3 martie 2021 18:50:44
Problema Energii Scor 30
Compilator py Status done
Runda Arhiva de probleme Marime 0.61 kb
def main ():
    input = open("energii.in", "r")
    output = open("energii.out","w")
    toInt = lambda a : [int(a[0]), int(a[1])]
    n, w = int(input.readline()), int(input.readline())
    cost = [50000001]*(w+1)

    for i in range(0,n):
        x = toInt(input.readline().split(" "))
        
        for j in range(w, x[0], -1):
            cost[j] = min(cost[j], cost[j - x[0]] + x[1])
        
        for j in range(1,x[0]+1):
            cost[j] = min(cost[j], x[1])
    
    output.write("-1") if cost[w] == 50000001 else output.write(str(cost[w]))

    input.close()
    output.close()

main()