Advertisement
bl00dt3ars

3

Aug 14th, 2021 (edited)
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.23 KB | None | 0 0
  1. animals = {}
  2. areas = {}
  3. command = input()
  4.  
  5. while not command == 'EndDay':
  6.     command = command.split(': ')
  7.     if command[0] == 'Add':
  8.         name, food, area = command[1].split('-')
  9.         if name not in animals:
  10.             animals[name] = int(food)
  11.         else:
  12.             animals[name] += int(food)
  13.         if area not in areas:
  14.             areas[area] = []
  15.             areas[area].append(name)
  16.         else:
  17.             if name not in areas[area]:
  18.                 areas[area].append(name)
  19.     elif command[0] == 'Feed':
  20.         name, food = command[1].split('-')
  21.         if name in animals:
  22.             animals[name] -= int(food)
  23.             if animals[name] <= 0:
  24.                 animals.pop(name)
  25.                 print(f'{name} was successfully fed')
  26.                 for k, v in areas.items():
  27.                     if name in v:
  28.                         areas[k].remove(name)
  29.  
  30.     command = input()
  31.  
  32. areas = {k: v for (k, v) in areas.items() if len(v) > 0}
  33.  
  34. print('Animals:')
  35. for k, v in sorted(animals.items(), key=lambda kvp: (-kvp[1], kvp[0])):
  36.     print(f' {k} -> {v}g')
  37. print('Areas with hungry animals:')
  38. for k, v in sorted(areas.items(), key=lambda kvp: (-len(kvp[1]), kvp[0])):
  39.     print(f' {k}: {len(v)}')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement