Advertisement
Guest User

Knights of n table

a guest
Jun 23rd, 2018
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1. import copy
  2.  
  3.  
  4. def getCoins(power, dataIn, k):
  5.   i = 0
  6.   result = []
  7.   for knight, hisCoin in dataIn:
  8.     if i >= k:
  9.       break
  10.     if int(knight) < int(power):
  11.       result.append(hisCoin)
  12.       i = i + 1
  13.   return result
  14.  
  15.  
  16. def main():
  17.   n, k = map(int, input().split())
  18.   knights = input().split()
  19.   coins = input().split()
  20.   data = list(zip(knights, coins))
  21.   tempData = data[:]
  22.   sortedData = sorted(tempData, key = lambda it: int(it[1]), reverse = True)
  23.  
  24.   for i in data:
  25.     knight, knightsCoin = i
  26.     res = 0
  27.     coinsFromWeakKnights = getCoins(knight, sortedData, k)
  28.     for coin in coinsFromWeakKnights:
  29.       res += int(coin)
  30.     res += int(knightsCoin)
  31.     print(res, end=" ")
  32.  
  33. if __name__ == "__main__":
  34.   main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement