<?php

class Klasemen
{
    private $klubPoin;

    public function __construct(array $klub)
    {
        $this->klubPoin = array_fill_keys($klub, 0);
    }

    public function catatPermainan(string $klubKandang, string $klubTandang, string $skor): void
    {
        [$skorKandang, $skorTandang] = explode(':', $skor); // Pecah string

        // Ubah string to int
        $skorKandang = (int) $skorKandang;
        $skorTandang = (int) $skorTandang;

        // Cek kondisi skor
        if ($skorKandang > $skorTandang) {
            $this->klubPoin[$klubKandang] += 3;
        } elseif ($skorKandang < $skorTandang) {
            $this->klubPoin[$klubTandang] += 3;
        } else {
            $this->klubPoin[$klubKandang] += 1;
            $this->klubPoin[$klubTandang] += 1;
        }
    }

    public function cetakKlasemen(): array
    {
        arsort($this->klubPoin); // Sorting
        return $this->klubPoin;
    }

    public function ambilPeringkat(int $nomorPeringkat): string
    {
        $klasemen = array_keys($this->cetakKlasemen());
        return $klasemen[$nomorPeringkat - 1] ?? 'Peringkat ke-' . $nomorPeringkat . 'tidak tersedia';
    }
}

//Eksekusi
$klasemen = new Klasemen(['Liverpool', 'Chelsea', 'Arsenal']);
$klasemen->catatPermainan('Arsenal', 'Liverpool', '2:1');
$klasemen->catatPermainan('Arsenal', 'Chelsea', '1:1');
$klasemen->catatPermainan('Chelsea', 'Arsenal', '0:3');
$klasemen->catatPermainan('Chelsea', 'Liverpool', '3:2');
$klasemen->catatPermainan('Liverpool', 'Arsenal', '2:2');
$klasemen->catatPermainan('Liverpool', 'Chelsea', '0:0');

print_r($klasemen->cetakKlasemen());
echo $klasemen->ambilPeringkat(2);
