# 5345. Rank Teams by Votes
##
```python= dddddddddd
class Solution:
def rankTeams(self, votes: List[str]) -> str:
numof_teams = len(votes[0])
all_teams = votes[0]
d = {team: [0] * numof_teams for team in all_teams}
for vote in votes:
for rank,team in enumerate(vote):
d[team][rank]-=1 # we need take minus
d_list=[]
for team, count_list in d.items():
tmp = count_list+[team] # FAIL: temp = count_list.append(team)
d_list.append(tmp)
return ''.join([ele[-1] for ele in sorted(d_list)])
```
##
```python=
class Solution:
def rankTeams(self, votes: List[str]) -> str:
numof_teams = len(votes[0])
all_teams = votes[0]
d = {team: [0] * numof_teams for team in all_teams}
for vote in votes:
for rank,team in enumerate(vote):
d[team][rank]-=1 # we need take minus
d_list=[]
for team, count_list in d.items():
count_list.append(team)
d_list.append(count_list)
return ''.join([ele[-1] for ele in sorted(d_list)])
```
##
```python=
class Solution:
def rankTeams(self, votes: List[str]) -> str:
numof_teams = len(votes[0])
all_teams = votes[0]
d = {team: [0] * numof_teams for team in all_teams}
for vote in votes:
for rank,team in enumerate(vote):
d[team][rank]-=1 # we need take minus
r = sorted(d.items(),key=lambda x: x[1]+[x[0]])
return ''.join([x[0] for x in r])
```