fork download
  1. # Python 3
  2.  
  3. class Klasemen():
  4. def __init__(self, daftar_klub: list[str]):
  5. # init klasemen klub
  6. self.daftar_klub = {klub: 0 for klub in daftar_klub}
  7.  
  8. def catatPermainan(self, klubKandang: str, klubTandang: str, skor: str):
  9. extract_skor = skor.split(":")
  10. # ganti tipe data
  11. skorKandang = int(extract_skor[0])
  12. skorTandang = int(extract_skor[1])
  13.  
  14. if(skorKandang > skorTandang):
  15. # klub kandang menang
  16. self.daftar_klub[klubKandang] += 3
  17. elif(skorKandang < skorTandang):
  18. # klub tandang menang
  19. self.daftar_klub[klubTandang] += 3
  20. else:
  21. # seri
  22. self.daftar_klub[klubKandang] += 1
  23. self.daftar_klub[klubTandang] += 1
  24.  
  25. # urutkan klasemen berdasarkan poin klub secara descending
  26. self.daftar_klub = dict(sorted(self.daftar_klub.items(), key=lambda x: x[1], reverse=True))
  27.  
  28. def cetakKlasemen(self):
  29. return list(self.daftar_klub.items())
  30.  
  31. def ambilPeringkat(self, nomorPeringkat: int):
  32. return list(self.daftar_klub.items())[nomorPeringkat-1][0]
  33.  
  34.  
  35. klasemen = Klasemen(['Liverpool', 'Chelsea', 'Arsenal'])
  36. klasemen.catatPermainan('Arsenal', 'Liverpool', '2:1')
  37. klasemen.catatPermainan('Arsenal', 'Chelsea', '1:1')
  38. klasemen.catatPermainan('Chelsea', 'Arsenal', '0:3')
  39. klasemen.catatPermainan('Chelsea', 'Liverpool', '3:2')
  40. klasemen.catatPermainan('Liverpool', 'Arsenal', '2:2')
  41. klasemen.catatPermainan('Liverpool', 'Chelsea', '0:0')
  42. print(klasemen.cetakKlasemen())
  43. print(klasemen.ambilPeringkat(2))
Success #stdin #stdout 0.03s 9908KB
stdin
Standard input is empty
stdout
[('Arsenal', 8), ('Chelsea', 5), ('Liverpool', 2)]
Chelsea