Documentos de Académico
Documentos de Profesional
Documentos de Cultura
23507042
Permasalahan Algoritmik
Greedy(1):
Jembatan Reot
Problem:
Kakek: 7 menit, nenek: 6 menit, ibu: 2 menit, dan ayah: 1 menit
Solusi optimum:
Ayah dan ibu = 2 menit
Ayah kembali = 1 menit
Nenek dan kakek = 7 menit
Ibu kembali = 2 menit
Ayah dan ibu = 2 menit
Greedy:
Karena ayah adalah orang yang tercepat dalam menyeberang, pada tiap
kali penyeberangan, ayah-lah yang menemani penyeberangan, dan
kembali lagi.
2+1 +6+1 +7 = 17 menit.
Greedy(1):
Routing
Greedy(3):
PlayGame (TopCoder 2004)
Solusi:
Baca entri dari satu blok, yang terurut berdasarkan atribut
yang dicari. Secara sequential search, cari entri paling besar
yang < ‘a’.
Ikuti pointer yang disimpan dalam indeks.
Branch & Bound(1):
Jembatan Reot
Fungsi f(): jumlah waktu yang telah
digunakan sampai saat ini.
Fungsi g(): jumlah waktu tempuh jembatan
dari orang yang belum berada di seberang
Branch & Bound(2):
Pendeta dan Monster
Dijkstra
Branch & Bound(4):
Problem Gundu (Cindy’s Puzzle)
a. )=4
b. )=3
Branch & Bound(5):
Pencarian Record Pada Basis Data dengan Index B-Tree
Solusi:
Representasi pohon yang digunakan sama seperti pada backtrack.
Fungsi f: diabaikan (0 untuk semua simpul).
Fungsi g: kedekatan nilai entri pada indeks dengan nilai ‘a’ yang
dicari.
Divide & Conquer (1):
Make Set
1 2 6 1 4 2 5 3 1
array 1 2 6 1 4 2 5 3 1
1 2 6 1 4 2 5 3 1
1 2
1 2
1 2 6 1 4 2 5 3 1
1 2 6 4 2 5 3 1
1 2 6 4 5 3
Divide and Conquer (2):
String Joining
Divide
Membagi sampai array berukuran 1
Conquer
Untuk array berukuran 1, hasil joinnya adalah isi
array itu sendiri, tanpa dioperasikan.
Combine
Pada combine, yang dilakukan adalah
mengkonkatenasi hasil array kiri dengan separator,
dan dikonkatenasi lagi dengan hasil array kanan
Divide and Conquer (3):
Routing
Divide
Bagi jaringan besar menjadi jaringan yang lebih kecil
dengan memilih titik-titik koneksi antar jaringan.
Conquer
Selesaikan permasalahan routing pada masing-
masing subjaringan.
Combine
Gabungkan solusinya menjadi rute lengkap untuk
pesan yang ingin dikirimkan.
Divide and Conquer (4):
Pemangkatan