import java.util.*;
public class Main {
static class Klasemen {
private Map
<String, Integer
> poin
= new LinkedHashMap
<>();
public Klasemen
(String[] klub
) { poin.put(nama, 0);
}
}
public void catatPermainan
(String klubKandang,
String[] hasil
= skor.
split(":"); int skorKandang
= Integer.
parseInt(hasil
[0]); int skorTandang
= Integer.
parseInt(hasil
[1]);
if (!poin.containsKey(klubKandang) ||
!poin.containsKey(klubTandang)) {
return;
}
if (skorKandang > skorTandang) {
poin.put(klubKandang, poin.get(klubKandang) + 3);
} else if (skorKandang < skorTandang) {
poin.put(klubTandang, poin.get(klubTandang) + 3);
} else {
poin.put(klubKandang, poin.get(klubKandang) + 1);
poin.put(klubTandang, poin.get(klubTandang) + 1);
}
}
public Map
<String, Integer
> cetakKlasemen
() { new ArrayList<>(poin.entrySet());
daftar.sort((a, b) ->
Integer.
compare(b.
getValue(), a.
getValue()));
Map
<String, Integer
> hasil
= new LinkedHashMap
<>(); for (Map.
Entry<String, Integer
> entri
: daftar
) { hasil.put(entri.getKey(), entri.getValue());
}
return hasil;
}
public String ambilPeringkat
(int nomorPeringkat
) { if (nomorPeringkat < 1 ||
nomorPeringkat > poin.size()) {
return null;
}
new ArrayList<>(cetakKlasemen().entrySet());
return daftar.get(nomorPeringkat - 1).getKey();
}
}
public static void main
(String[] args
) { Klasemen klasemen = new Klasemen(
new String[]{"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");
System.
out.
println(klasemen.
cetakKlasemen()); System.
out.
println(klasemen.
ambilPeringkat(2)); }
}
CmltcG9ydCBqYXZhLnV0aWwuKjsKCnB1YmxpYyBjbGFzcyBNYWluIHsKICAgIHN0YXRpYyBjbGFzcyBLbGFzZW1lbiB7CiAgICAgICAgcHJpdmF0ZSBNYXA8U3RyaW5nLCBJbnRlZ2VyPiBwb2luID0gbmV3IExpbmtlZEhhc2hNYXA8PigpOwoKICAgICAgICBwdWJsaWMgS2xhc2VtZW4oU3RyaW5nW10ga2x1YikgewogICAgICAgICAgICBmb3IgKFN0cmluZyBuYW1hIDoga2x1YikgewogICAgICAgICAgICAgICAgcG9pbi5wdXQobmFtYSwgMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHB1YmxpYyB2b2lkIGNhdGF0UGVybWFpbmFuKFN0cmluZyBrbHViS2FuZGFuZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmcga2x1YlRhbmRhbmcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RyaW5nIHNrb3IpIHsKICAgICAgICAgICAgU3RyaW5nW10gaGFzaWwgPSBza29yLnNwbGl0KCI6Iik7CiAgICAgICAgICAgIGludCBza29yS2FuZGFuZyA9IEludGVnZXIucGFyc2VJbnQoaGFzaWxbMF0pOwogICAgICAgICAgICBpbnQgc2tvclRhbmRhbmcgPSBJbnRlZ2VyLnBhcnNlSW50KGhhc2lsWzFdKTsKCiAgICAgICAgICAgIGlmICghcG9pbi5jb250YWluc0tleShrbHViS2FuZGFuZykgfHwKICAgICAgICAgICAgICAgICFwb2luLmNvbnRhaW5zS2V5KGtsdWJUYW5kYW5nKSkgewogICAgICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoc2tvckthbmRhbmcgPiBza29yVGFuZGFuZykgewogICAgICAgICAgICAgICAgcG9pbi5wdXQoa2x1YkthbmRhbmcsIHBvaW4uZ2V0KGtsdWJLYW5kYW5nKSArIDMpOwogICAgICAgICAgICB9IGVsc2UgaWYgKHNrb3JLYW5kYW5nIDwgc2tvclRhbmRhbmcpIHsKICAgICAgICAgICAgICAgIHBvaW4ucHV0KGtsdWJUYW5kYW5nLCBwb2luLmdldChrbHViVGFuZGFuZykgKyAzKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIHBvaW4ucHV0KGtsdWJLYW5kYW5nLCBwb2luLmdldChrbHViS2FuZGFuZykgKyAxKTsKICAgICAgICAgICAgICAgIHBvaW4ucHV0KGtsdWJUYW5kYW5nLCBwb2luLmdldChrbHViVGFuZGFuZykgKyAxKTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcHVibGljIE1hcDxTdHJpbmcsIEludGVnZXI+IGNldGFrS2xhc2VtZW4oKSB7CiAgICAgICAgICAgIExpc3Q8TWFwLkVudHJ5PFN0cmluZywgSW50ZWdlcj4+IGRhZnRhciA9CiAgICAgICAgICAgICAgICBuZXcgQXJyYXlMaXN0PD4ocG9pbi5lbnRyeVNldCgpKTsKCiAgICAgICAgICAgIGRhZnRhci5zb3J0KChhLCBiKSAtPgogICAgICAgICAgICAgICAgSW50ZWdlci5jb21wYXJlKGIuZ2V0VmFsdWUoKSwgYS5nZXRWYWx1ZSgpKSk7CgogICAgICAgICAgICBNYXA8U3RyaW5nLCBJbnRlZ2VyPiBoYXNpbCA9IG5ldyBMaW5rZWRIYXNoTWFwPD4oKTsKICAgICAgICAgICAgZm9yIChNYXAuRW50cnk8U3RyaW5nLCBJbnRlZ2VyPiBlbnRyaSA6IGRhZnRhcikgewogICAgICAgICAgICAgICAgaGFzaWwucHV0KGVudHJpLmdldEtleSgpLCBlbnRyaS5nZXRWYWx1ZSgpKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgcmV0dXJuIGhhc2lsOwogICAgICAgIH0KCiAgICAgICAgcHVibGljIFN0cmluZyBhbWJpbFBlcmluZ2thdChpbnQgbm9tb3JQZXJpbmdrYXQpIHsKICAgICAgICAgICAgaWYgKG5vbW9yUGVyaW5na2F0IDwgMSB8fAogICAgICAgICAgICAgICAgbm9tb3JQZXJpbmdrYXQgPiBwb2luLnNpemUoKSkgewogICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIExpc3Q8TWFwLkVudHJ5PFN0cmluZywgSW50ZWdlcj4+IGRhZnRhciA9CiAgICAgICAgICAgICAgICBuZXcgQXJyYXlMaXN0PD4oY2V0YWtLbGFzZW1lbigpLmVudHJ5U2V0KCkpOwoKICAgICAgICAgICAgcmV0dXJuIGRhZnRhci5nZXQobm9tb3JQZXJpbmdrYXQgLSAxKS5nZXRLZXkoKTsKICAgICAgICB9CiAgICB9CgogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIEtsYXNlbWVuIGtsYXNlbWVuID0gbmV3IEtsYXNlbWVuKAogICAgICAgICAgICBuZXcgU3RyaW5nW117IkxpdmVycG9vbCIsICJDaGVsc2VhIiwgIkFyc2VuYWwifQogICAgICAgICk7CgogICAgICAgIGtsYXNlbWVuLmNhdGF0UGVybWFpbmFuKCJBcnNlbmFsIiwgIkxpdmVycG9vbCIsICIyOjEiKTsKICAgICAgICBrbGFzZW1lbi5jYXRhdFBlcm1haW5hbigiQXJzZW5hbCIsICJDaGVsc2VhIiwgIjE6MSIpOwogICAgICAgIGtsYXNlbWVuLmNhdGF0UGVybWFpbmFuKCJDaGVsc2VhIiwgIkFyc2VuYWwiLCAiMDozIik7CiAgICAgICAga2xhc2VtZW4uY2F0YXRQZXJtYWluYW4oIkNoZWxzZWEiLCAiTGl2ZXJwb29sIiwgIjM6MiIpOwogICAgICAgIGtsYXNlbWVuLmNhdGF0UGVybWFpbmFuKCJMaXZlcnBvb2wiLCAiQXJzZW5hbCIsICIyOjIiKTsKICAgICAgICBrbGFzZW1lbi5jYXRhdFBlcm1haW5hbigiTGl2ZXJwb29sIiwgIkNoZWxzZWEiLCAiMDowIik7CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihrbGFzZW1lbi5jZXRha0tsYXNlbWVuKCkpOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihrbGFzZW1lbi5hbWJpbFBlcmluZ2thdCgyKSk7CiAgICB9Cn0K