<?php

class Klasemen
{
    private $klubPoin = [];
    
    public function __construct(array $daftarKlub)
    {
        foreach ($daftarKlub as $club) {
            $this->klubPoin[$club] = 0;
        }
    }
    
    public function resultPermainan(string $clubKandang, string $clubTandang, string $skor)
    {
        list($skorKandang, $skorTandang) = explode(':', $skor);
        
        if ($skorKandang > $skorTandang) {
            $this->klubPoin[$clubKandang] += 3;
        } elseif ($skorKandang < $skorTandang) {
            $this->klubPoin[$clubTandang] += 3;
        } else {
            $this->klubPoin[$clubKandang] += 1;
            $this->klubPoin[$clubTandang] += 1;
        }
    }
    
    public function baganKlasemen(): array
    {
        uksort($this->klubPoin, function($a, $b) {
            if ($this->klubPoin[$a] === $this->klubPoin[$b]) {
                return strcmp($a, $b);
            }
            return $this->klubPoin[$b] - $this->klubPoin[$a];
        });
        return $this->klubPoin;
    }
    
    public function ambilPeringkat(int $nomorPeringkat): string
    {
        $klub = array_keys($this->baganKlasemen());
        return $klub[$nomorPeringkat - 1] ?? 'Tidak ada';
    }
}

// Contoh penggunaan
$klasemen = new Klasemen(['Indonesia', 'Korsel', 'Australia']);
$klasemen->resultPermainan('Indonesia', 'Korsel', '2:1');
$klasemen->resultPermainan('Indonesia', 'Australia', '2:1');
$klasemen->resultPermainan('Korsel', 'Indonesia', '2:2');
$klasemen->resultPermainan('Korsel', 'Australia', '3:2');
$klasemen->resultPermainan('Australia', 'Indonesia', '3:2');
$klasemen->resultPermainan('Australia', 'Korsel', '3:3');

print_r($klasemen->baganKlasemen());
echo $klasemen->ambilPeringkat(1);

?>
