11

11

11
import random
bag = int(input())
v = bag / 2
c = [[random.randint(1, v) for s in range(0, 3)] for r in range(0, 10)]
b = weight = value = 0
for i in range(len(c)):
    c[i][2] = c[i][0] / c[i][1]
for i in range(len(c)):
    for j in range(len(c)-1):
        if c[j][2] > c[j+1][2]:
            c[j], c[j+1] = c[j+1], c[j]
while weight < bag:
    if weight + c[b][0] < bag:
        weight += c[b][0]
        value += c[b][1]
        del c[b]
        print('\n  ', '+', '\n  ', c, '\n  ', weight, '\n  ', value)
    else:
        i = 0
        b = 0
        for i in range(len(c)):
            for b in range(len(c)):
                if weight + c[b][0] < bag and c[b+1][1] > c[b][1]:
                    c[b][1], c[b+1][1] = c[b+1][1], c[b][1]
                    weight += c[b][0]
                    value += c[b][1]
                    del c[b]
                    print('\n  ', '+', '\n  ', c, '\n  ', weight, '\n  ', value)
                elif weight + c[b][0] == bag:
                    del c[b]
                    print('\n  ', '=', '\n  ', c, '\n  ', weight, '\n  ', value)
                    break
                elif weight + c[b][0] <= bag:
                    weight += c[b][0]
                    value += c[b][1]
                    del c[b]
                    break
                else:
                    del c[b]
                    print('\n  ', '-', '\n  ', c, '\n  ', weight, '\n  ', value)
                    break
print('\n  ', '=', '\n  ', c, '\n  ', weight, '\n  ', value)


Report Page