Advertisement
bl00dt3ars

P.3 Zoo

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