KP3 Reg
KP3 Reg
Olimpiade Olahraga
Kuis Pemrograman 3
Olimpiade Olahraga
:
:
:
SDAXIIQ03.java
3 detik / kasus uji
32 MB / kasus uji
Pendahuluan
Di Universitas Indonesia sedang diadakan olimpiade olahraga. Panitia akan membuat bagan untuk
mempermudah dalam mengatur dan mengolah data hasil pertandingan. Karena pesertanya yang sangat
banyak, panitia agak kebingungan membuat bagan tersebut. Anda sebagai mahasiwa Fasilkom diminta untuk membantu pembuatan bagan dengan representasi Perfect Binary Tree, yaitu full binary
tree yang setiap leaf node-nya berada pada kedalaman yang sama. Internal node pada tree merupakan
nilai kemenangan, yaitu yang menunjukkan mana tim yang menang pada babak sebelumnya. Nilai 1
menggambarkan tim di anak kanan yang menang, sedangkan nilai -1 menggambarkan anak kiri yang
menang. Tidak ada pertandingan yang berakhir seri. Nama tim akan direpresentasikan dalam eksternal
node.
Contoh representasi tree.
1
A1
-1
B0
C4
D2
Dari representasi tersebut terlihat bahwa pada babak penyisihan tim B dan C yang menang. Selanjutnya
di babak final tim C yang menang.
Format Masukan
Masukan dibaca dari masukan standar. Baris pertama merupakan banyaknya babak pertandingan.
Baris selanjutnya adalah pasangan tim yang bertanding di babak penyisihan. Selanjutnya adalah nilai
kemenangan untuk setiap babak (kiri ke kanan) diurutkan terbalik mulai dari babak final hingga babak
penyisihan. Tim yang bertanding minimal dua, sehingga sekurang-kurangnya terdapat satu pertandingan.
Format Keluaran
Keluaran ditulis ke keluaran standar. Keluaran terdiri atas empat baris, yang secara berurutan mencetak:
pemenang juara 1, pemenang juara 2, tim-tim yang dikalahkan oleh juara 1, dan tim-tim yang dikalahkan
oleh juara 2. Dua baris terakhir mencetak berurutan berdasarkan tim yang lebih dulu dikalahkan.
Contoh Masukan I
2
A1 B0
C4 D2
1
1 -1
Contoh Keluaran I
C4
B0
D2 B0
A1
Contoh Masukan II
4
A B
C D
E F
G H
I J
K L
M N
O P
1
1 -1
1 1 -1 1
-1 -1 1 1 -1 -1 1 1
Contoh Keluaran II
I
H
J K P H
G F C
Catatan Penting
Implementasikan program Anda menggunakan bahasa Java SE 6 ke bawah, sesuai dengan Java Language
Specification 3rd Edition. Jangan menggunakan fitur-fitur yang terdapat pada Java SE 7 ke atas (misal:
switch statement dengan variable bertipe String).