Week 8
2. Terdapat uang koin pecahan dengan nominal 1, 5, 10, 25, 50 dan 100. Dengan uang nominal
269, hitunglah menggunakan metode dynamic programming untuk mencari:
a. Jumlah minimum koin untuk membentuk 269.
Jawab : Untuk mencari jumlah minimum koin yang digunakan untuk membentuk
nominal uang 269, kita dapat menggunakan metode dinamis programming dengan
cara sebagai berikut:
Buat sebuah array dengan panjang sama dengan jumlah nominal uang yang akan
dibentuk (269 dalam kasus ini) dan isi dengan nilai infiniti.
Set nilai array pada index 0 dengan 0 karena jumlah koin yang digunakan untuk
membentuk nominal 0 adalah 0.
Kemudian, mulai dari 1 hingga 269, untuk setiap index i, lakukan perulangan untuk
setiap jenis koin yang tersedia (1, 5, 10, 25, 50, dan 100 dalam kasus ini).
Dalam perulangan, bandingkan nilai array pada index i dengan nilai array pada index
i - nilai koin yang sedang diperiksa + 1. Jika nilai array pada index i lebih besar dari
hasil perbandingan tersebut, maka ganti nilai array pada index i dengan hasil
perbandingan tersebut.
Setelah perulangan selesai, nilai array pada index 269 akan menyimpan jumlah
minimum koin yang digunakan untuk membentuk nominal uang 269.
Note: Pastikan untuk mengecek apakah nilai-nilai koin yang diperiksa >=0 sebelum
melakukan perbandingan. Jika tidak, akan terjadi kesalahan.
4. Buatlah graph coloring dari denah berikut serta Tentukan Warna dan Bilangan
Kromatisnya menggunakan algoritma Welsh and Powell.