Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- contests = {}
- order_cons = []
- individuals = {}
- def manage_input(con: str, cons: dict, us: str, pts: int):
- if us not in individuals:
- individuals.update({us: pts})
- elif us in individuals:
- if con not in cons:
- cons[con] = {}
- if us not in cons[con]:
- individuals[us] += pts
- else:
- if pts > individuals[us]:
- individuals[us] = pts
- if con not in cons:
- cons[con] = {us: pts}
- order_cons.append(con)
- elif con in cons:
- if us not in cons[con]:
- cons[con].update({us: pts})
- else:
- if pts > cons[con][us]:
- cons[con][us] = pts
- while True:
- data = input()
- if data == 'no more time':
- break
- data = data.split(' -> ')
- user = data[0]
- contest = data[1]
- points = int(data[2])
- manage_input(contest, contests, user, points)
- for i in contests:
- print(f'{i}: {len(contests[i])} participants')
- order = sorted(sorted(contests[i], key=lambda _: _), key=lambda _: contests[i][_], reverse=True)
- for x in range(1, len(order) + 1):
- stuff = order[x - 1]
- print(f'{x}. {stuff} <::> {contests[i][stuff]}')
- print('Individual standings:')
- individual_order = sorted(sorted(individuals, key=lambda _: _), key=lambda _: individuals[_], reverse=True)
- [print(f'{x}. {individual_order[x - 1]}'
- f' -> {individuals[individual_order[x - 1]]}') for x in range(1, len(individual_order) + 1)]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement