nq1s788

26 шестой товар со скидкой

May 24th, 2025
417
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.91 KB | None | 0 0
  1. #6262 https://kpolyakov.spb.ru/school/ege/gen.php?action=viewAllEgeNo&egeId=26&cat160=on
  2. data = open('26.txt').readlines()
  3. n = int(data[0])
  4. s = 100000
  5. a = list(map(int, data[1:]))
  6. a.sort()
  7. answ = (0, 0)
  8. for sk in range(n):
  9.     skid = []
  10.     for i in range(-sk, 0):
  11.         skid.append(a[i] / 2)
  12.     a_i = 0
  13.     sk_i = 0
  14.     sm = 0
  15.     k = 0
  16.     while sm <= s:
  17.         if (k + 1) % 6 == 0:
  18.             if sk_i < sk:
  19.                 sm += skid[sk_i]
  20.                 sk_i += 1
  21.                 k += 1
  22.             else:
  23.                 break
  24.         else:
  25.             if a_i < n - sk:
  26.                 sm += a[a_i]
  27.                 a_i += 1
  28.                 k += 1
  29.             else:
  30.                 break
  31.     if sm > s:
  32.         if k % 6 == 0:
  33.             sm -= skid[sk_i - 1]
  34.             k -= 1
  35.         else:
  36.             sm -= a[a_i - 1]
  37.             k -= 1
  38.     answ = max(answ, (k, s - sm))
  39. print(answ)
Advertisement
Add Comment
Please, Sign In to add comment