Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- string = input().split("||")
- my_dict = {}
- while not string[0] == "Sail":
- town = string[0]
- people = int(string[1])
- gold = int(string[2])
- if town not in my_dict and people > 0:
- my_dict[town] = {"pl": people, "gl": gold}
- elif town in my_dict and people > 0:
- my_dict[town]["pl"] += people
- my_dict[town]["gl"] += gold
- string = input().split("||")
- actions = input().split("=>")
- while not actions[0] == "End":
- command = actions[0]
- town = actions[1]
- if command == "Plunder":
- people_killed = int(actions[2])
- gold_stolen = int(actions[3])
- if my_dict[town]["pl"] - people_killed >= 0 or my_dict[town]["gl"] - gold_stolen >= 0:
- people_left = my_dict[town]["pl"] - people_killed
- gold_left = my_dict[town]["gl"] - gold_stolen
- my_dict[town]["pl"] = people_left
- my_dict[town]["gl"] = gold_left
- print(f"{town} plundered! {gold_stolen} gold stolen, {people_killed} citizens killed.")
- if my_dict[town]["pl"] - people_killed <= 0 or my_dict[town]["gl"] - gold_stolen < 0:
- if my_dict[town]["pl"] == 0 or my_dict[town]["gl"] == 0:
- print(f"{town} has been wiped off the map!")
- my_dict.pop(town)
- elif command == "Prosper":
- receiving_gold = int(actions[2])
- if receiving_gold < 0:
- print("Gold added cannot be a negative number!")
- if town in my_dict and receiving_gold >= 0:
- my_dict[town]["gl"] += receiving_gold
- print(f"{receiving_gold} gold added to the city treasury. Santo Domingo now has {my_dict[town]['gl']} gold.")
- actions = input().split("=>")
- print(f"Ahoy, Capitan! There are {len(my_dict)} wealthy settlements to go to:")
- for key, value in sorted(my_dict.items(), key=lambda x: (-my_dict[x]["gl"])):
- print(f"{key} -> Population: {value['pl']} citizens, Gold: {value['gl']} kg")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement