Advertisement
BdW44222

04. Legendary Farming

Aug 13th, 2021
740
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.57 KB | None | 0 0
  1. def material_filter(material_name, material_quantity, items_dict):
  2.     if material_name not in items_dict:
  3.         items_dict[material_name] = 0
  4.     items_dict[material_name] += material_quantity
  5.  
  6.  
  7. legendary_item = ""
  8. key_items = {}
  9. junk_items = {}
  10.  
  11. while legendary_item == "":
  12.     materials = input().split()
  13.  
  14.     for index in range(0, len(materials), 2):
  15.         quantity = int(materials[index])
  16.         material = materials[index + 1].lower()
  17.  
  18.         if material == "shards":
  19.             material_filter(material, quantity, key_items)
  20.  
  21.         elif material == "fragments":
  22.             material_filter(material, quantity, key_items)
  23.  
  24.         elif material == "motes":
  25.             material_filter(material, quantity, key_items)
  26.  
  27.         else:
  28.             material_filter(material, quantity, junk_items)
  29.  
  30.         if material == "shards" and key_items[material] >= 250:
  31.             key_items[material] -= 250
  32.             legendary_item = "Shadowmourne"
  33.             break
  34.  
  35.         elif material == "fragments" and key_items[material] >= 250:
  36.             key_items[material] -= 250
  37.             legendary_item = "Valanyr"
  38.             break
  39.  
  40.         elif material == "motes" and key_items[material] >= 250:
  41.             key_items[material] -= 250
  42.             legendary_item = "Dragonwrath"
  43.             break
  44.  
  45. print(f"{legendary_item} obtained!")
  46.  
  47. for item, qty in sorted(key_items.items(), key=lambda kvp: (-kvp[1], kvp[0])):
  48.     print(f"{item}: {qty}")
  49.  
  50. for jun, junk_qty in sorted(junk_items.items(), key=lambda kvp: kvp[0]):
  51.     print(f"{jun}: {junk_qty}")
  52.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement