fork download
  1. class Klasemen:
  2. def __init__(self, klub_list):
  3. self.klub_poin = {klub: 0 for klub in klub_list}
  4.  
  5. def catat_permainan(self, klub_kandang, klub_tandang, skor):
  6. gol_kandang, gol_tandang = map(int, skor.split(':'))
  7.  
  8. if gol_kandang > gol_tandang:
  9. self.klub_poin[klub_kandang] += 3
  10. elif gol_kandang < gol_tandang:
  11. self.klub_poin[klub_tandang] += 3
  12. else:
  13. self.klub_poin[klub_kandang] += 1
  14. self.klub_poin[klub_tandang] += 1
  15.  
  16. def cetak_klasemen(self):
  17. sorted_klasemen = dict(sorted(self.klub_poin.items(), key=lambda item: item[1], reverse=True))
  18. return sorted_klasemen
  19.  
  20. def ambil_peringkat(self, nomor_peringkat):
  21. sorted_klasemen = sorted(self.klub_poin.items(), key=lambda item: item[1], reverse=True)
  22. if nomor_peringkat - 1 < 0 or nomor_peringkat - 1 >= len(sorted_klasemen):
  23. return None
  24. return sorted_klasemen[nomor_peringkat - 1][0]
  25.  
  26. klasemen = Klasemen(['Liverpool', 'Chelsea', 'Arsenal'])
  27. klasemen.catat_permainan('Arsenal', 'Liverpool', '2:1')
  28. klasemen.catat_permainan('Arsenal', 'Chelsea', '1:1')
  29. klasemen.catat_permainan('Chelsea', 'Arsenal', '0:3')
  30. klasemen.catat_permainan('Chelsea', 'Liverpool', '3:2')
  31. klasemen.catat_permainan('Liverpool', 'Arsenal', '2:2')
  32. klasemen.catat_permainan('Liverpool', 'Chelsea', '0:0')
  33.  
  34. print(klasemen.cetak_klasemen())
  35. print(klasemen.ambil_peringkat(2))
Success #stdin #stdout 0.02s 7160KB
stdin
Standard input is empty
stdout
{'Liverpool': 2, 'Chelsea': 5, 'Arsenal': 8}
Chelsea