You are on page 1of 23

PELATIHAN ONLINE 2018

KOMPUTER – PAKET 6
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

PROBLEM SOLVING PARADIGM


Sesuai dengan judul dari paket ini, Problem Solving Paradigm (Paradigma untuk
menyelesaikan masalah) hanya berupa paradigma untuk menyelesaikan masalah. Jadi, materi
yang diberikan pada paket ini bukanlah solusi dari suatu permasalahan, melainkan hanya cara
pandang yang akan membawa Anda menuju solusi dari masalah tersebut. Setiap masalah akan
memiliki solusi yang berbeda-beda. Tentunya untuk menentukan cara apa yang akan Anda
gunakan untuk menyelesaikan masalah dengan se optimal mungkin, akan dibutuhkan latihan yang
cukup banyak.

Sedikit fakta, materi yang ada dalam paket ini adalah materi yang sering menghambat
mayoritas anak-anak yang sedang belajar untuk OSN (terutama Dynamic Programming).
Sehingga tidak ada salahnya apabila Anda sudah terbiasa mulai dari sekarang!

Complete Search
Complete search adalah paradigma yang paling mudah untuk Anda pahami. Simpel saja,
cek semua kemungkinan yang ada dan Anda akan menemukan jawaban yang Anda cari.
Beberapa masalah memang tidak ada solusi yang lebih mudah dari menggunakan Complete
Search, tetapi perlu Anda ingat bahwa mungkin saja terdapat solusi yang lebih efisien dalam
menemukan jawabannya. Ingat juga bahwa dalam OSK dan OSP ada batasan waktu
mengerjakan, sedangkan di dalam OSN ada Time Limit untuk setiap jalannya program yang Anda
buat. Sehingga mungkin saja ada solusi yang lebih efisien daripada sekedar mencari semua
kemungkinan yang ada.

Greedy
Greedy dalam bahasa Indonesia artinya rakus. Dengan kata lain, dengan rakus (memilih
solusi yang menurut kita paling optimal), kita dapat mendapatkan solusi yang paling optimal.
Sebagai contoh, apabila anda membeli barang di pasar, maka anda menginginkan barang yang
sama dengan harga paling murah. Anda tidak perlu memikirkan apakah barang yang sama
dengan harga yang lebih tinggi akan memungkinkan penghematan uang yang lebih besar.
Pembuktian tersebut dapat dilakukan secara formal dalam Matematika :
Apabila terdapat 2 buah benda dengan harga A dan B, dimana A<Bdan kita memiliki uang
sejumlah X, maka X-A>X-B.

Dari pembuktian sederhana tersebut, kita ketahui bahwa untuk menghemat uang kita (sisa
uang terbanyak), kita cukup memilih barang dengan harga termurah.

Dynamic Programming
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

Sebelum memasuki materi Dynamic Programming, Saya ingin mengatakan jika Anda
merasa kesulitan untuk memahami materi ini sebenarnya cukup bisa dimaklumi. Bagi orang-orang
yang sedang mempelajari dasar-dasar dari Competitive Programming, Dynamic Programming
biasanya menjadi materi penghambat. Meskipun demikian, bukan berarti ini menjadi alasan bagi
Anda untuk tidak berusaha mempelajari materi ini.

Dalam Dynamic Programming, tidak ada rumus dan algoritma yang pasti, setiap solusi
yang ada tergantung pada soal, bahkan tergantung pada bagaimana Anda menganalisa soal
tersebut. Mungkin saja terdapat beberapa solusi Dynamic Programming berbeda yang masih
menghasilkan solusi yang sama. Sehingga dalam materi ini pun, hanya ada contoh-contoh soal.
Selamat belajar!

Terdapat beberapa permasalahan yang tidak bisa kita Greedy, hal tersebut dikarenakan
untuk mendapatkan solusi yang paling optimal, kita perlu mempertimbangkan semua kemungkinan
solusi yang ada. Pada dasarnya kita katakan solusi tersebut Bruteforce (mencoba satu per satu),
tetapi untuk mempercepat bruteforce tersebut, kita dapat melakukan suatu teknik yang bernama
Dynamic Programming. Perhatikan permasalahan berikut ini :

Anda memiliki uang sejumlah 6, dan anda ingin menukarkan uang tersebut dengan pecahan
uang yang lebih kecil. Pecahan uang yang ada adalah 1, 3, dan 4. Berapa banyak pecahan
uang minimum yang dapat anda peroleh?

Sekilas kita berpikir bahwa apabila kita menggunakan pecahan yang yang besar maka
jumlah pecahan uang yang kita dapatkan akan semakin sedikit. Solusi tersebut membawakan
jawaban 3, dimana pecahan uang yang diambil adalah 4, 1, dan 1. Tetapi jelas kita lihat bahwa
solusi yang paling optimal adalah 2, dimana pecahan uang yang diambil adalah 3 dan 3.

Permasalah tersebut disebut Coin Change, dan untuk menyelesaikan solusi tersebut
dibutuhkan Dynamic Programming. Apabila kita lakukan bruteforce biasa, maka kita akan mencari
semua kemungkinan yang mungkin secara naive, yaitu {1,1,1,1,1,1} , {1,1,1,3}, {1,1,4}, dan
seterusnya hingga kita mendapatkan solusi yang paling minimum.

Solusi tersebut dapat kita perbaiki dengan suatu rekursi. Apabila kita definisikan fungsi f(n)
adalah banyaknya pecahan uang minimum yang kita dapatkan apabila uang yang kita miliki adalah
n, kita ketahui bahwa f(n)=min(f(n-1), f(n-3), f(n-4))+1 (manakah yang lebih optimal antara memilih
mengambil pecahan uang 1, 3, atau 4, kemudian jumlah pecahan uang yang ada bertambah 1).
Dalam rekursi, tentunya dibutuhkan suatu base case, dimana base case nya adalah f(0)=0
(apabila uang yang kita miliki adalah 0, maka kita tidak bisa menukarkan pecahan uang apapun).

Kemudian dimana letak Dynamic Programming nya? Pada dasarnya, DP adalah Bruteforce
dengan memoisasi, yaitu nilai yang sudah kita peroleh kita simpan dalam suatu array, sehingga
apabila pada saat suatu keadaan dibutuhkan lagi, kita tidak melakukan rekursi ulang melainkan
menggunakan nilai yang sebelumnya sudah kita dapatkan.
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

Contoh DP paling sederhana adalah Fibonacci. Kita ketahui bahwa f(n)=f(n-1)+f(n-2)


dimana f(0) = f(1) = 1. Apabila kita mencari nilai dari f(5), maka proses yang sesungguhnya terjadi
adalah f(5) = f(4) + f(3) = f(3) + f(2) + f(2) + f(1) = … dimana proses tersebut sangatlah panjang.
Pada dasarnya saat kita sudah mendapatkan nilai dari f(3), kita cukup menggunakan nilai yang
sudah kita dapatkan sebelumnya.

Terdapat 3 bagian penting dalam suatu DP :


1. State : parameter dari fungsi rekursi yang mempengaruhi nilai dari fungsi tersebut
2. Base case : kasus dasar dari fungsi, dimana didefinisikan secara manual, tidak didapatkan
melalui rekursi
3. Rekurens : kasus selain base case, dimana rekursi terjadi sehingga kita mendapatkan
jawaban yang kita inginkan.

DP Kombinatorik
Terdapat beberapa soal kombinatorik yang tidak dapat dikerjakan dengan rumus
kombinatorik, ataupun akan membutuhkan waktu yang sangat lama apabila hanya menggunakan
rumus kombinatorik saja. Salah satu cara untuk menyelesaikan soal tersebut adalah dengan
Dynamic Programming. Kita dapat mendefiniskan fungsi f() sebagai banyaknya cara untuk
menyusun objek sesuai dengan state dari fungsi tersebut. Kemudian dengan memanfaatkan
aturan penjumlahan dan aturan perkalian antar state di bawahnya sebagai rekurens, kita dapat
memperoleh hasil yang kita cari.
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

SOAL

1. Suatu negara memiliki mata uang dengan pecahan 500, 1000, 2000, 4000, dan 8000. Pak
Dengklek memiliki uang sebesar 22500 dan ia ingin menukarkan uang tersebut dengan
pecahan-pecahan uang yang ada. Berapakah jumlah pecahan uang minimum yang dapat Pak
Dengklek terima?
A. 3
B. 4
C. 5
D. 16
E. 22

2. Dengan deskripsi yang sama dengan nomor 1, apabila pecahan uang yang ada adalah 500,
700, 800, 1100, dan 1500 dan uang yang dimiliki Pak Dengklek adalah 17400, berapakah
jumlah pecahan uang minimum yang dapat Pak Dengklek terima?
A. 12
B. 13
C. 14
D. 15
E. 16

3. Pak Dengklek akan pindah rumah dan terdapat 12 kardus berisi barang-barang yang ada
pada rumahnya sebelumnya. Pak Dengklek ingin membawa 12 kardus tersebut ke rumah
yang baru, sayangnya karena berat Ia hanya bisa membawa 1 atau 2 kardus sekaligus dalam
1 kali perjalanan. Berapa banyak cara berbeda untuk Pak Dengklek memindahkan semua
kardus itu?
A. 132
B. 144
C. 169
D. 225
E. 233

Berikut ini adalah deskripsi untuk soal nomor 4 - 6.


Budi ingin bermain Loncat Berhadiah. Permainan dimainkan pada sebuah kotak berukuran R x
C petak. Petak kiri atas dinomori (1, 1) dan petak kanan bawah dinomori (R, C). Pada setiap
petak terdapat sebuah bilangan. Budi memulai permainan dengan memilih salah satu petak
pada kolom 1. Dari suatu petak (r, c), Budi harus berpindah ke petak (r, c+1), (r+1, c+1), atau (r-
1, c+1). Apabila Budi sudah berada pada kolom C, permainan berakhir. Budi mendapat poin
berupa jumlah seluruh bilangan yang terdapat pada petak-petak yang dilalui Budi.
4. Berapa poin maksimum yang dapat Budi peroleh apabila ia bermain di kotak di bawah ini?

1 6 2 1
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

2 2 5 3

4 1 3 2

A. 13
B. 14
C. 15
D. 16
E. 17

5. Berapa poin maksimum yang dapat Budi peroleh apabila ia bermain di kotak di bawah ini?

3 4 1 2 1

2 3 2 4 3

5 1 3 3 2

4 2 1 2 1

1 5 2 1 4

A. 14
B. 15
C. 16
D. 17
E. 18

6. Berapa banyak cara berbeda yang dapat Budi lakukan untuk mendapatkan poin maksimum
apabila ia bermain di kotak di bawah ini?
1 1 2 1 1 1

1 1 1 1 1 1

1 1 2 1 4 3

1 1 1 1 4 1

A. 35
B. 32
C. 30
D. 28
E. 24
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

7. Pak Dengklek sedang membeli beras di pasar untuk nantinya Ia jual lagi di toko nya di rumah.
Di pasar, terdapat banyak kios yang menjual beras dengan jenis dan kualitas yang sama,
tetapi dengan harga yang berbeda. Kios A menjual beras tersebut sebanyak 12 kg dengan
harga Rp 8.000 per kilo, sedangkan Kios B menjual sebanyak 7 kg dengan harga Rp 7.800
per kilo, dan Kios C menjual sebanyak 20 kg dengan harga Rp 8.100 per kilo. Kemudian beras
tersebut akan Pak Dengklek jual dengan harga Rp 10.000 per kilo. Apabila Pak Dengklek
hanya mampu membawa 15 kg beras, maka berapa keuntungan maksimum yang dapat Pak
Dengklek peroleh?
A. Rp 30.000
B. Rp 30.800
C. Rp 31.400
D. Rp 33.000
E. Rp 33.200

Berikut adalah deskripsi untuk soal nomor 8 - 10.


Dari semua bilangan-bilangan 3, 4, 5, 9, 12, 17, 18, dan 20 akan dibuat berpasang-pasangan
(menjadi 4 pasang). Dari setiap pasangan itu, dihitung selisih antara kedua bilangannya. Lalu,
selisihnya dijumlahkan, dan kita sebut jumlah itu sebagai total selisih.

8. Berapa total selisih minimal yang mungkin?


A. 9
B. 10
C. 11
D. 12
E. 13

9. Berapa total selisih maksimal yang mungkin?


A. 43
B. 44
C. 45
D. 46
E. 47

10. Berapa banyak cara membentuk pasangan bilangan yang berbeda agar menghasilkan total
selisih maksimal? Keterangan : Pasangan (A,B) dan (B,A) adalah pasangan yang berbeda.
A. 1
B. 24
C. 48
D. 192
E. 384

11. Pak Chanek memiliki koin dengan nilai nominal 1,3, dan 4 dengan jumlah yang tidak terbatas.
Ketika sedang berbelanja, Pak Chanek mendapati bahwa dirinya harus membayar sebesar 18
SD (satuan dengklek). Tentukan, berapakah banyaknya minimal koin yang dapat Pak Chanek
pakai untuk membayar?
A. 4
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

B. 5
C. 6
D. 7
E. 8

12. Dengan deskripsi yang sama seperti soal nomor 25 tetapi nilai nominal yang mungkin adalah
1,2, dan 4, berapa banyak minimal koin yang dapat Pak Chanek pakai untuk membayar?
A. 4
B. 5
C. 6
D. 7
E. 8

13. Diberikan sebuah array :


A = (1,4,5,2,3,7,5,9,10,6,7)
Tentukan, berapakah panjang dari longest increasing subsequence! Subsequence merupakan
subset terurut dari array tersebut, dimana mereka tidak harus bersebelahan. Contoh
subsequence dari A adalah {1,2,3}, {4,5,10}, {7,6,7}, namun {5,6,7,8} bukan.
A. 3
B. 4
C. 5
D. 6
E. 7

Berikut ini adalah deskripsi untuk soal nomor 14 dan 15.


Pak Dengklek dan Pak Chanek sedang bermain “Ambil Batu”. Awal mula terdapat beberapa
batu di atas meja. Kemudian secara bergiliran mereka berdua mengambil batu-batu yang ada,
dengan syarat mereka hanya dapat mengambil sebanyak 1-4 batu setiap putarannya. Diketahui
bahwa Pak Dengklek mulai terlebih dahulu, dan pemain yang tidak bisa mengambil batu lagi
adalah pemain yang kalah. Diketahui bahwa mereka berdua bermain secara optimal.

14. Apabila terdapat 10 buah batu di awal, berapa jumlah batu yang perlu Pak Dengklek ambil
sehingga Ia dijamin menang?
A. 1
B. 2
C. 3
D. 4
E. Pak Dengklek tidak mungkin menang.

15. Apabila terdapat 2018 buah batu di awal, berapa jumlah batu yang perlu Pak Dengklek ambil
sehingga Ia dijamin menang?
A. 1
B. 2
C. 3
D. 4
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

E. Pak Dengklek tidak mungkin menang.

16. Pak Dengklek mendapatkan sebuah teka-teki. Pertama, diberikan dua buah himpunan A dan
B, dimana A = {3, 4, 6, 8, 9} dan B = {2, 5, 5, 7, 8}. Kemudian Pak Dengklek ditantang untuk
membuat persegi panjang sebanyak mungkin dengan cara mengambil 1 buah bilangan dari A
dan 1 buah bilangan dari B, kemudian kedua buah bilangan tersebut merupakan sisi dari
sebuah persegi panjang. Peraturannya adalah setiap anggota himpunan hanya dapat
digunakan 1 kali saja. Maka berapa total luas persegi panjang maksimum yang dapat Pak
Dengklek buat?
A. 168
B. 169
C. 170
D. 184
E. 185

17. Dengan deskripsi yang sama, berapa total luas persegi panjang minimum yang dapat Pak
Dengklek buat?
A. 136
B. 137
C. 138
D. 139
E. 140

Berikut ini adalah deskripsi untuk soal nomor 18 dan 19.


Sebuah bilangan dikatakan indah apabila selisih antar digit yang bersebelahan tidak lebih
dari 1. Sebagai contoh, 345 dan 444 adalah bilangan yang indah, sedangkan 468 dan 449
bukan bilangan yang indah.

18. Berapa banyak bilangan indah yang tersusun atas 2 buah digit?
A. 26
B. 27
C. 28
D. 29
E. 30

19. Berapa banyak bilangan indah yang tersusun atas 3 buah digit?
A. 70
B. 75
C. 80
D. 85
E. 90

Berikut ini adalah deskripsi untuk soal nomor 20 dan 21.


Terdapat N kota dengan N nama berbeda. Setiap kota memiliki populasi penduduk masing-
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

masing. Pemerintah negara tersebut pusing karena terdapat terlalu banyak kota. Pemerintah
tersebut berencana menggabungkan kota-kota tersebut hingga hanya tersisa satu kota. Caranya
begini. Selama masih ada 2 kota atau lebih, pemerintah memilih 2 kota sesuka dia, kemudian
menggabungkan kedua kota tersebut. Nama kota yang baru tersebut ialah nama salah satu kota
dari kedua kota asalnya yang memiliki jumlah penduduk lebih banyak. Apabila jumlah
penduduknya sama, namanya boleh yang mana saja. Tugas Anda pada soal ini ialah
menghitung ada berapa nama kota berbeda dari kota terakhir yang mungkin terjadi dengan
asumsi pemerintahnya memilih kedua kota tersebut secara acak?

20. Misalkan N = 8, dan jumlah penduduk masing-masing kota adalah 2, 50, 24, 21, 1, 9, 15, dan
5 orang. Setelah seluruh kota berhasil digabung menjadi 1 kota, ada berapa nama kota
berbeda dari kota yang mungkin?
A. 2
B. 3
C. 4
D. 5
E. 6

21. Misalkan N = 100, dan tiap kota diberi nomor 1 sampai 100. Jumlah penduduk di kota i adalah
i*i. Ada berapa nama kota berbeda dari kota yang mungkin?
A. 93
B. 94
C. 95
D. 96
E. 97

Berikut ini adalah deskripsi untuk soal nomor 22 dan 23.


Suatu hari Pak Dengklek sedang membangun rumah baru, ia ingin membuat dekorasi berupa
sebuah persegi panjang dengan lebar 1 satuan. Ia memiliki dua jenis segitiga, yang pertama
segitiga siku-siku sama kaki dengan panjang kaki 1 satuan, dan segitiga yang kedua berupa
segitiga sama kaki gabungan dua segitiga yang pertama.

22. Jika Pak Dengklek ingin membuat dekorasi dengan panjang 3 satuan, maka berapa banyak
cara berbeda untuk membuat dekorasi tersebut?
A. 17
B. 18
C. 19
D. 20
E. 21

23. Jika Pak Dengklek ingin membuat dekorasi dengan panjang 8 satuan, maka berapa banyak
cara berbeda untuk membuat dekorasi tersebut?
A. 3821
B. 4374
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

C. 4562
D. 5114
E. 5372

Berikut ini adalah deskripsi untuk soal nomor 24 dan 25.


Ammar sangat gemar makan. Sebuah restaurant menyediakan 3 jenis makanan yaitu ayam,
kangkung dan sambal. Tidak hanya gemar makan, Ammar juga gemar bermain teka-teki.
Ammar membuat beberapa peraturan untuk dirinya sendiri saat makan.
 Sambal hanya boleh dimakan setelah memakan ayam atau kangkung.
 Kangkung hanya boleh dimakan setelah memakan ayam.
 Ayam boleh dimakan setelah memakan ayam atau kangkung atau sambal.
 Untuk mengawali rangkaian makannya, Ammar harus memakan ayam.

24. Jika Ammar memesan 3 ayam dan 2 kangkung, banyaknya kemungkinan Ammar
menghabiskan makanannya adalah
A. 2
B. 3
C. 4
D. 5
E. 6

25. Jika Ammar memesan 3 ayam, 2 kangkung dan 2 sambal, banyaknya kemungkinan Ammar
menghabiskan makanannya adalah
A. 6
B. 7
C. 8
D. 9
E. 10

Berikut ini adalah deskripsi untuk soal nomor 26 dan 27.


Pada suatu sore hari Budi sedang amat teramat bosan sehingga ia menciptakan sebuah
permainan yang sangat inovatif yaitu "Lempar bola". Tujuan permainan ini sangat sederhana
yaitu Budi hanya ingin memasukkan satu-satunya bola yang ia pegang sekarang ke dalam
keranjang-keranjang yang terdapat dalam suatu tempat. Ketika dia berhasil memasukkan bola
ke dalam suatu keranjang, maka Budi akan berjalan ke koordinat keranjang yang dia masukkan
dan mengambil bola tersebut dan melemparkan bola tersebut ke keranjang lain yang belum
dimasukkan dari posisi Budi sekarang. Budi ingin berjalan seminimum mungkin. Bantulah Budi
untuk menghitung jarak minimum untuk memasukan bola ke semua keranjang. Diketahui bahwa
Budi berada pada koordinat 0.

26. Apabila terdapat 4 buah keranjang yang terletak pada koordinat -4, -1, 2, dan 3 maka berapa
jarak minimum yang ditempuh Budi?
A. 4
B. 5
C. 6
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

D. 7
E. 8

27. Apabila terdapat 10 buah keranjang yang terletak pada koordinat -20, -15, -9, -5, -3, 2, 3, 10,
13, 20, maka berapa jarak minimum yang ditempuh Budi?
A. 40
B. 42
C. 44
D. 46
E. 48

Berikut ini adalah deskripsi untuk soal nomor 28 dan 29.


Pak Dengklek sedang bermain permainan “Jejer Bilangan”. Terdapat beberapa buah bilangan,
dan Pak Dengklek ingin menjejerkan semua bilangan tersebut membentuk bilangan yang baru.
Misalkan saja terdapat bilangan 13 dan 5, maka apabila dijejerkan akan membentu bilangan
135. Sekarang Pak Dengklek ingin agar bilangan baru yang terbentuk adalah semaksimal
mungkin.

28. Apabila bilangan yang ada di awal adalah 53, 26, 17, 38, 41, 87, 32, dan 63, maka berapa
bilangan baru yang diinginkan Pak Dengklek?
A. 8763534138322617
B. 8763534138321726
C. 8763534132382617
D. 8763534132381726
E. 8783635341321726

29. Apabila bilangan yang ada di awal adalah 135, 21, 38, 413, 5, 73, 25, dan 2, maka berapa
bilangan baru yang diinginkan Pak Dengklek?
A. 4131357338252152
B. 7354133822521135
C. 7354133825221135
D. 1354135732522138
E. 7534133825221135

30. Pak Dengklek dan Pak Chanek sedang bermain “Ambil Batu”. Awal mula terdapat 20 batu di
atas meja. Kemudian secara bergiliran mereka berdua mengambil batu-batu yang ada,
dengan syarat mereka hanya dapat mengambil sebanyak P batu setiap putarannya, dimana P
adalah bilangan prima. Diketahui bahwa Pak Dengklek mulai terlebih dahulu, dan pemain
yang tidak bisa mengambil batu lagi adalah pemain yang kalah, apabila keduanya bermain
secara optimal maka berapa banyak batu yang harus Pak Dengklek ambil pada putaran
pertama agar pasti menang?
A. 5
B. 7
C. 11
D. 13
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

E. 17
*Akhir dari soal*
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

PEMBAHASAN PAKET 5

1. Jumlah jalanan akan minimum apabila tidak ada cycle pada kota-kota tersebut, sehingga graf
nya berbentuk Tree. Sebuah Tree dengan N buah node memiliki N-1 buah edge.

Jawabannya adalah “5” (B).

2. Permasalahan ini dikenal sebagai “Minimum Spanning Tree” yang dapat diselesaikan dengan
algoritma Kruskall. Biaya yang dibutuhkan adalah 6+7+9+10+11

Jawabannya adalah “43” (D).

3. Dua orang yang mencintai E adalah B dan D.

Jawabannya adalah “E” (A).

4. Pada dasarnya, soal ini dapat diselesaikan dengan Graph Coloring. Node yang ada adalah
masing-masing tim, dua buah node terhubung oleh edge apabila terdapat setidaknya 1 anggota
yang sama, dan hari rapat direpresentasikan dengan warna nya. Tetapi waktu yang dibutuhkan
tidak kalah lama dengan coba-coba.

Jawabannya adalah “5” (D).

5. Gunakan cara yang sama dengan nomor sebelumnya.

Jawabannya adalah “5” (D).

6. Soal ini adalah mencari rute terpendek (shortest path) pada weighted graph. Anda bisa
menyelesaikannya dengan mudah menggunkanan algoritma Djikstra. Coba-coba akan
membutuhkan waktu yang lebih lama.

Jawabannya adalah “19” (B).

7. Orang yang dapat kita share adalah orang yang merupakan teman Pak Dengklek tetapi bukan
teman Bu Dengklek.

Jawabannya adalah “A dan C benar” (E).


PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

8. Soal ini berkaitan dengan Eulerian Path/Cycle. Terdapat 6 node yang memiliki degree ganjil.
Suatu graph bisa memiliki Eulerian Path/Cycle apabila semua degree node nya genap, atau
terdapat 2 degree node yang ganjil. Tetapi pada soal ini, tidak disebutkan mana titik awal dan
akhirnya, sehingga kita perlu membuat semua degree node nya genap.

Jawabannya adalah “3” (C).

9. Soal ini adalah Eulerian Path. Node dengan degree ganjil adalah 6 dan 8.

Jawabannya adalah “6” (C).

10. Apabila Anda mencoba menggambar denah kota yang Anda, dapat terlihat bahwa ada 4
rute berbeda.

Jawabannya adalah “4” (E).

11. Apabila Anda mencoba menggambar denah kota yang Anda, dapat terlihat bahwa tidak
ada rute yang memenuhi syarat

Jawabannya adalah “G” (A).

12. Karena semua kota sudah terhubung, jawabannya adalah permutasi dari kota-kota yang
ada, yaitu 4!.

Jawabannya adalah “24” (D).

13. Gambar berikut ini adalah solusi dari soal tersebut :


PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

Jawabannya adalah “3” (B).

14. Soal ini sebenarnya disebut dengan “Minimum Cardinality Bipartite Matching” (MCBM)
yang dapat diselesaikan dengan algoritma “Alternating Path”, tetapi algoritma untuk
menyelesaikannya cukup panjang untuk disimulasikan. Anda bisa selesaikan dengan mencoba-
coba.

Jawabannya adalah “6” (B).

15. Sama dengan nomor sebelumnya.

Jawabannya adalah “10” (C).

16. Soal ini adalah “Minimum Spanning Tree”. Tol laut yang dibangun adalah 4, 6, 7, 9.

Jawabannya adalah “26” (D).

17. Soal ini adalah “Traveling Salesman Problem” yang dapat diselesaikan dengan Dynamic
Programming. Sayangnya menyimulasikan DP untuk soal ini membutuhkan waktu yang sangat
lama (kompleksitas non-polynomial), sehingga lebih baik coba-coba yang murah saja.

Jawabannya adalah “38” (B).

18. Memang terdapat “Four Color Theorem”, yang menyatakan bahwa sebuah bidang 2D
dapat diwarnai dengan maksimal 4 warna. Sehingga kita perlu mencari apakah bisa
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

diselesaikan dengan warna kurang dari 4. Sebenarnya dibutuhkan 4 warna apabila terdapat 3
bangun yang saling bersinggungan, kemudian dibungkus dengan suatu bangun yang lain.
Contoh :

Karena lukisan tersebut tidak mengandung bangunan yang membungkus 3 bangun yang lain,
maka maksimal jumlah warna yang dibutuhkan adalah 3. Dan karena ada 3 bangun yang saling
bersentuhan, maka jumlah warna minimum nya adalah 3. Berikut ini adalah mahakarya seharga
100 juta USD yang membuktikan bahwa bisa diwarnai dengan 3 warna :

Jawabannya adalah “3” (B).


PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

19. Problem ini sama saja dengan Eulerian Path/Cycle. Sehingga Anda cukup memeriksa
degree dari masing-masing perpotongan garis. Apabila semuanya genap atau terdapat 3 yang
ganjil, maka gambar tersebut bisa dibuat.

Jawabannya adalah “A, B, dan C” (E).

20. Problem ini adalah “Maximum Flow”, yang dapat diselesaikan dengan algoritma “Edmond-
Karp”. Sayangnya menyimulasikan algoritma ini membutuhkan waktu yang sangat lama,
sehingga lebih baik coba-coba saja.

Jawabannya adalah “15” (A)

21. Sama dengan nomor 20.

Jawabannya adalah “20” (B).

22. Sama dengan nomor 20.

Jawabannya adalah “21” (C).

23. Problem ini adalah Shortest Path, dimana node nya adalah semua bilangan yang ada, dan
2 buah node dihubungkan oleh suatu edge apabila terdapat suatu tombol yang dapat
mengubah dari satu node ke node yang lain. Anda bisa mengubah 111 menjadi 777 dengan
menekan tombol ketiga 4 kali.

Jawabannya adalah “4” (A).

24. Perhatikan bahwa digit pertama dan digit kedua akan selalu memiliki angka yang sama.

Jawabannya adalah “Tidak mungkin” (E).

25. Soal ini adalah Shortest Path, dapat Anda selesaikan dengan algoritma Breadth-First
Search.

Jawabannya adalah “27” (E).

26. Tidak ada pembahasan.

Jawabannya adalah “A, B, dan C” (E).


PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

27. Sebenarnya soal ini adalah soal Dynamic Programming, hanya saja inputnya berupa
representasi graph, dimana node nya merupakan titik sudut, sedangkan edge nya merupakan
sisinya. Perhatikan bahwa pada detik ke-T, node A dapat dikunjungi dari node B atau C dari
detik ke-(T-1). Begitu pula dengan node B dapat dikunjungi dari node A atau C dari detik ke-(T-
1) dan node C dapat dikunjungi dari node A atau B dari detik ke-(T-1). Dari situ, simulasikan
dengan aturan penjumlahan. Detail dari Dynamic Programming akan dibahas pada pertemuan
6 (pertemuan depan).

Jawabannya adalah “3” (D).

28. Sama dengan nomor 27.

Jawabannya adalah “342” (E).

29. Problem ini adalah “Maximum Cardinality Bipartite Matching”. Anda dapat mencoba-coba
hingga menemukan jawaban yang optimal.

Jawabannya adalah “9” (A).

30. Pilihan A dapat ditanami 5 melon. Pilihan B dapat ditanami 6 melon. Pilihan C dapat
ditanami 6 melon. Pilihan D dapat ditanami 7 melon.

Jawabannya adalah “D” (D).


PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

KISAH PERJALANAN MEDALIS


Yoel Agustheo Rinding (HI UNPAD 2015) – Bidang Geografi

OSN Geografi: A New Decision, A New Journey

Siapa yang tidak mengenal OSN? Sebuah ajang bergengsi bagi pelajar yang duduk di bangku SD, SMP, dan
SMA. Ajang yang mempertemukan insan muda terbaik bangsa yang telah melalui serangkaian proses ketat
untuk meraih medali dan mewakili Indonesia pada akhirnya. Proses rumit dan ketat yang harus dilalui
menghasilkan siswa-siswi yang sangat berkompeten di bidangnya masing-masing. Apabila dihitung-hitung
seorang siswa untuk mencapai OSN haruslah melewati setidaknya 3 tahapan seleksi, mulai dari tingkat
sekolah, kabupaten/kota, dan provinsi. Maka dari itu, tidak heran mengapa OSN itu sangat bergengsi dan
hanya orang-orang terpilih dan beruntung saja yang dapat terlibat di dalamnya.

Saya sendiri telah mengenal OSN sejak saya duduk di kelas 2 SMP, ketika itu guru saya meminta saya untuk
mengikuti OSN IPS tingkat kabupaten. Namun keterbatasan pengetahuan saya mengenai OSN baik itu
sistematikanya maupun tingkat kesulitannya membuat saya tidak lanjut ke tahap provinsi. Melihat teman-
teman saya yang lain masuk ke tahapan selanjutnya, muncullah di dalam diri saya ambisi yang menggebu-
gebu untuk mencoba OSN ketika saya SMA nanti. Kegagalan yang saya alami pada OSN SMP membawa
saya mengenal lebih lagi OSN dan begitu tahu kesempatan masih terbuka lebar di bangku SMA lalu saya
berencana untuk mengikuti OSN SMA dan memperbaiki kesalahan masa lalu saya.

Begitu memasuki bangku SMA saya disibukkan dengan serangkaian proses MOS dan organisasi di SMA, hal
ini entah bagaimana membuat saya melupakan focus saya mengenai OSN. Hingga pada saat mendekati
bulan-bulan November dan Desember 2012, saya mendengar bahwa sudah dibuka pendaftaran bagi siswa-
siswi yang ingin mengikuti seleksi tim OSN sekolah untuk kabupaten. Sekolah saya sendiri merupakan salah
satu sekolah yang memiliki animo yang tinggi mengenai OSN, jadi sekolah pun perlu mengadakan seleksi
dan pada akhirnya hanya memilih 3 orang yang menjadi perwakilan sekolah.

Pada saat mendengar berita seperti itu, saya merasa seolah-olah ambisi itu kembali berapi-api di dalam diri
saya dan saya berkata kepada diri saya sendiri bahwa saya akan sukses kali ini. Pendaftaran pun dimulai,
saya mendengar bahwa OSN di SMA lebih terfokus dan mendalam. Mengingat pada waktu SMP
kebanyakan soal yang dikeluarkan pada saat OSN adalah soal SMA. Maka dari itu saya menyimpulkan
bahwa OSN SMA akan menggunakan soal yang setara dengan jenjang universitas. Hal itu membuat saya
merasa tertantang mengingat saya harus memiliki inisiatif yang tinggi untuk mulai mempelajari sesuatu hal
yang dipelajari di tingkat perguruan tinggi.

Hampir setengah kelas saya X 7 dulu mendaftarkan diri ke seleksi tersebut. Pendaftar yang banyak dengan
pilihan bidang yang berbeda juga. Saya sendiri memilih kebumian, pada saat itu belum ada info mengenai
bidang geografi, oleh sebab itu saya mendaftarkan diri ke bidang OSN kebumian. Namun berjalannya
waktu, ketika pembinaan di sekolah untuk menghadapi seleksi tersebut saya merasa jenuh dan tidak
sanggup lagi. OSN bidang kebumian memiliki tingkat kesulitan yang tinggi dan saya sebagai orang yang
lebih condong kepada sosial merasa salah mengambil keputusan dan pada akhirnya saya kurang maksimal
pada bidang tersebut.
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

Hingga waktu seleksi pun tiba, saya disajikan soal pilihan ganda yang menggunakan sistem betul ditambah
nilai satu dan salah dikurang nilai nol koma lima berikut dengan 5 nomor esai. Respon saya begitu melihat
soalnya adalah down karena banyak dari pertanyaan yang merupakan hal baru bagi saya dan saya tidak
mengetahui cara penyelesaiannya. Dengan hanya mengisi sedikit pilihan ganda karena takut nilai menjadi
minus dan esai dengan pengerjaan seadanya, saya mengumpulkan pekerjaan saya. Saya tidak merasa
maksimal pada saat tes hari itu, begitu saya bertanya kepada teman-teman saya ada yang berkata bahwa
dia bisa mengerjakannya da nada juga yang berkata dia mengisi 20% saja dari total pertanyaan yang ada.
Saya pada saat itu sangat pesimis untuk maju ke tahap selanjutnya mengingat dari 10 orang hanya terpilih 3
terbaik saja yang akan maju ke tahap selanjutnya.

Sampai pada hari pengumuman siswa yang terpilih menjadi wakil sekolah di ajang OSN tingkat kabupaten,
saya sudah sangat pasrah mengenai hasil yang akan dibacakan. Dan pada akhirnya memang saya tidak
terpilih menjadi 3 terbaik dalam mewakili sekolah ke ajang OSN tersebut. Saya akhirnya kembali ke kelas
dengan muka yang lesu karena saya tidak dapat lanjut namun saya ingat bahwa ada kesempatan tahun
depan dan saya pun mulai bersemangat lagi dan mungkin waktu saya bukan sekarang. namun tiba-tiba
ketika saya sedang berada di kelas masuklah salah satu staff yang biasanya mengurus perekrutan OSN ke
kelas saya, dan dia meminta izin kepada guru yang mengajar untuk berbicara dengan saya. Saya seketika
kaget dan betanya-tanya untuk apa saya dipanggil. Bapak itu akhirnya berbicara bahwa saya diberi
kesempatan untuk mengikuti OSN tingkat kabupaten tapi bukan di bidang kebumian. Dia berkata bahwa
saya menempati posisi ke-4 pada perolehan nilai kebumian tadi dan saya diminta untuk mewakili sekolah di
OSN dalam bidang geografi bersama dengan kedua teman saya yang berada di posisi ke-5 dan ke-6.

Kelegaan, kebingungan, dan rasa senang campur aduk pada saat saya mendengar kabar itu. Kelegaan
karena saya ternyata tidak buruk sekali dengan berada di posisi ke-4, rasa senang karena saya akan
mewakili sekolah di ajang OSN tersebut, dan kebingungan karena saya berada di bidang yang berbeda, dan
hanya menghitung minggu sampai pada ajang OSK (Olimpiade Sains tk. Kabupaten) tersebut. Namun
diantara semuanya saya hanya mencoba untuk bersyukur kepada Tuhan karena saya percaya ada maksud
Tuhan dibalik penempatan saya di bidang geografi ini.

Perjalanan saya dalam persiapan untuk OSK ini ternyata penuh tantangan, karena materi geografi yang
sangat luas dan dengan waktu yang sangat sedikit dan juga pada saat itu saya baru saja masuk SMA, banyak
materi geografi yang saya belum ketahui ditambah lagi dengan tidak maksimalnya bimbingan di sekolah
saya dikarenakan kurangnya jumlah guru yang membimbing sehingga memaksa saya untuk belajar
otodidak dengan buku-buku yang saya cari di perpustakaan dan materi powerpoint yang diberikan. Rasa
lelah, kecewa, dan lain-lain menemani saya dalam persiapan OSK, disaat anak-anak yang lain dapat belajar
dengan focus di kelas, saya membaca materi olimpiade dan tidak jarang saya dimarahi oleh guru karena
tidak memperhatikan pelajaran karena sibuk belajar sendiri. Hal itu saya lakukan demi OSK dan tidak
melakukan kesalahan pada masa lalu dimana saya malas untuk belajar olimpiade. Memang semua hal itu
perlu pengorbanan, namun tetap saya masih bertanggung jawab dengan kelas saya dengan maksimal
dalam ulangan dan pekerjaan rumah.

Tiba hari OSK, siap tidak siap saya harus siap. Melihat banyak perwakilan dari sekolah yang datang entah
mengapa saya merasa sangat gugup dan minder. Banyak yang terlihat sudah sangat siap menghadapi
kompetisi ini. Saya pun hanya bisa meminta doa orang tua ketika saya ingin mengerjakan soal dan berserah
kepada Tuhan. Begitu soal dibagikan dan saya membukanya saya tidak langsung membaca soal, namun
saya membaca peraturannya terlebih dahulu dan saya melihat bahwa peraturan mengenai benar ditambah
nilai tiga dan salah dikurang nol koma lima. Saya mulai memikirkan strategi apa yang dapat diterapkan
menghadapi peraturan ini. Dan saya berakhir kepada apabila saya yakin mengenai suatu jawaban
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

setidaknya 40%, saya akan tetap jawab pertanyaan tersebut, namun bila kurang saya kosongkan agar tidak
terjadi minus.

Pertanyaan-pertanyaan di lembar soal memiliki bobotnya masing-masing ada yang mudah, sedang, sulit.
Saya sendiri kaget mengenai adanya topik pengetahuan umum pada soal-soal terakhir. Memang saya
menyukai pengetahuan umum, namun soal itu dapat menjadi pedang bermata dua karena apabila kita
tidak tahu tidak ada yang dapat dilakukan. Saya mencoba menyelesaikan soal tersebut dengan konsentrasi
dan tenang.

Pada saat pengumuman OSK, banyak teman saya yang ternyata maju ke tahap provinsi (OSP). Dan ketika
waktunya geografi diumumkan, ternyata saya mendapat peringkat ke-2 dan diberikan kesempatan untuk
lanjut ke tahap provinsi. Dengan bersyukur kepada Tuhan dan berterima kasih kepada semua orang yang
telah mendukung saya, saya menghadapi persiapan OSP. Untuk persiapan OSP sendiri saya diharuskan
menginap di Jakarta selama kurang lebih 4 hari 3 malam untuk belajar geografi. Fakta menarik yang saya
temukan adalah bahwasannya saya akan berkelas dengan orang-orang dari seluruh Indonesia. Hal itu
memacu saya untuk lebih berjuang lagi untuk mencapai OSN.

Hari OSP pun tiba, dan ternyata diluar prediksi saya, soal tersebut sangat sulit. Apalagi berbicara mengenai
esainya yang peta buta. Dan saya kurang maksimal disitu. Pada akhirnya saya berhenti di OSP karena saya
tidak dinyatakan lulus seleksi. Memang sulit untuk mencapai 10 orang terbaik dari 100 lebih peserta
dimana peserta tersebut merupakan yang terbaik di sekolah dan kabupaten atau kotannya. Namun saya
mencoba untuk tidak sedih dan menjadikan kegagalan ini menjadi saat introspeksi diri menjadi lebih baik
lagi di ajang OSN tahun depan.

OSK tahun 2014 merupakan turning point bagi saya, dan saya harus sukses karena ini kesempatan terakhir.
Hal itulah yang saya katakan kepada diri saya menjelang OSK untuk menyemangati diri sendiri dan
mengingatkan tentang ambisi yang ada. Pada saat itu ada peningkatan prestasi yang saya dapatkan yaitu
dengan posisi pertama di kabupaten dan saya berhak melanjutkan ke tingkat provinsi. Di provinsi saya telah
menyiapkan segala kemungkinan dengan doa dan tekad yang kuat saya mengerjakan soal OSP. Dan pada
akhirnya saya merupakan salah satu 10 terbaik di Jawa Barat dan berhak mewakili Jawa Barat dalam bidang
geografi di OSN 2014 di Lombok, NTB.

Rasa senang yang tidak dapat digambarkan oleh kata-kata saya rasakan pada saat mengetahui bahwa saya
lanjut OSN. Mulai saat itu saya mengganti target saya dengan tidak hanya mencapai OSN namun juga
mendapatkan medali dan menyumbangkan medali pertama bagi sekolah saya. Bersama dengan 9 orang
lain saya menghadapi OSN dengan senang sekaligus gugup. Senang karena OSN diselenggarakan di Lombok
dan gugup karena semua orang yang berkompetisi disini tidak perlu ditanyakan lagi mengenai
kemampuannya.

Dan memang OSN itu wow sekali karena tingkat kesulitannya yang sangat tinggi. Untuk geografi sendiri,
kesulitan itu sangat dirasakan pada saat field test di Pantai Nipah. Saya sudah sangat pasrah dan berharap
tes tertulis, multimedia, dan laboratorium saya dapat menutupi nilai praktek lapangan saya yang sudah
pasti sangat tidak maksimal. Namun saya tidak patah semangat dan terus optimis selama rangkaian OSN
berjalan. Hingga pada saat ditunggu-tunggu pengumuman medalis. Rasa gugup dan tegang yang memuncak
saya rasakan pada saat pembacaan medalis. Hingga pada saat pembacaan medalis perunggu, ternyata saya
merupakan salah satunya. Dengan shock saya maju ke panggung untuk dikalungkan medali dan rasa tidak
percaya terus ada di benak saya. Apakah ini hanya sebuah mimpi? Seorang anak yang bukan siapa-siapa,
berasal dari daerah penglaju penuh dengan pabrik dan polusi ternyata dapat berkarya demi nama
PELATIHAN ONLINE 2018
KOMPUTER – PAKET 6

keluarganya dan sekolahnya. Saya hanya bisa beribu-ribu kali mengucap syukur kepada Tuhan dan orang-
orang yang telah mendukung saya selama ini.

Bukan sebuah hal yang mudah untuk saya menjadi seorang medalis di OSN. Hal ini perlu proses yang sangat
panjang. Tangis, tawa, kecewa, senang, gugup, haru, semuanya berpaduan menemani saya dalam
perjalanan menuju garis finish. OSN merupakan ajang hanya untuk mereka yang siap. Siap dikecewakan
oleh keadaan, siap diberikan kejutan yang diluar pemikiran kita, siap dipertemukan oleh keadaan yang
sangat baru, dan juga siap mengemban predikat sebagai sang juara. Semua ini dapat dilalui dengan
semangat yang terus membara, dukungan orang sekitar, dan yang pastinya rencana Tuhan yang sudah ada
untuk kita. Maka dari itu, apabila kamu ingin dan berani berkompetisi di ajang OSN ini, pastikanlah apakah
kamu siap akan konsekuensi dan penghargaan yang akan kamu dapat nantinya.

Intelligence Without Ambition Is A Bird Without Wings


-Salvador Dali

You might also like