Anda di halaman 1dari 8

Praktek Pengantar Algoritma

Hardy Huang, Harrison, Andrew Jauhari & Budiman Wijaya


December 3, 2014

Modul 9

Teknik Pencarian(Search)
9.1

Petunjuk

Perhatikan petunjuk Dosen untuk berbagai permasalahan Search !


Perhatikan dan ikuti petunjuk dosen mengenai bagaimana cara menggunakan program Judge untuk mengevaluasi permasalahan yang Anda
kerjakan!

9.2

Permasalahan

Permasalahan 1: Mama Minta Pulsa


Pernahkah Anda mengirim sms dari era sebelum smartphone ? Untuk mem-

buat sebuah huruf di layar handphone, Anda harus menekan sekumpulan


angka berulang - ulang sampai terbentuk sebuah kata. Pada permasalahan
ini, Anda diminta untuk menerjemahkan penekanan tombol menjadi kata
yang akan terbentuk. Simbol dan huruf besar ada huruf diabaikan, dan
angka 0 menyatakan spasi. Semua ouput adalah dalam huruf kecil
Masukan
Tipe Data String berupa penekanan tombol
Keluaran
Tipe Data String berupa isi pesan
Test Case 1
Masukan
6 2 6 2 0 6 444 66 8 2 0 7 88 555 7777 2
Keluaran
mama minta pulsa
Test Case 2

Masukan
6 2 6 2 0 555 2 4 444 0 3 444 0 55 2 66 8 666 777 0 7 666 555 444 7777 444
Keluaran
mama lagi di kantor polisi
Test Case 3
Masukan
5 2 66 4 2 66 0 8 33 555 33 7 666 66 0 6 2 6 2 0 3 88 555 88
Keluaran
jangan telepon mama dulu

Permasalahan 2: Sisip !
Diberikan kumpulan bilangan dan seperangkat instruksi dapatkah Anda
menghasilkan posisi terakhir dari instruksi tersebut ?
Kumpulan bilangan akan terdiri dari bilangan bulat, sedangkan perintah
akan terdiri dari awal,akhir dan samping.
Awal menyatakan akan ada penempatan data baru di awal.
Akhir menyatakan akan ada penempatan data baru di akhir.
Samping menyatakan ada penempatan data baru di samping dari angka
yang ditentukan. Setiap angka yang akan disisipkan ke dalam kumpulan
bilangan harus unik.
Masukan
String berisi : Kumpulan bilangan yang dipisahkan spasi
String berisi : perintah angka yang akan disisipkan (disamping elemen
ke)
Keluaran
Cetakan array paling akhir setelah penyisipan

Test Case 1
Masukan
1 2 10 4 5 6 7
awal 8
Keluaran
[
]
8, 1, 2, 10, 4, 5, 6, 7
Test Case 2
Masukan
8 1 2 10 4 5 6 7
akhir 8
Keluaran
[
]
8, 1, 2, 10, 4, 5, 6, 7
Test Case 3
Masukan
8 1 2 10 4 5 6 7
akhir 9
Keluaran
[
]
8, 1, 2, 10, 4, 5, 6, 7, 9

Test Case 4
Masukan
8 1 2 10 4 5 6 7 9
samping 15 2
Keluaran
[
]
8, 1, 2, 15, 10, 4, 5, 6, 7, 9

Test Case 5
Masukan
8 1 2 15 10 4 5 6 7 9
samping 15 10
Keluaran
[
]
8, 1, 2, 15, 10, 4, 5, 6, 7, 9

Test Case 6
Masukan
8 1 2 15 10 4 5 6 7 9
samping 16 100
Keluaran
[
]
8, 1, 2, 15, 10, 4, 5, 6, 7, 9

Test Case 7
Masukan
8 1 2 15 10 4 5 6 7 9
samping 20 7
Keluaran
[
]
8, 1, 2, 15, 10, 4, 5, 6, 7, 20, 9

Permasalahan 3: Simpanse Mencari Jodoh


Seekor simpanse jantan, kita panggil namanya Luchu, sedang memilih pasangannya, simpanse-simpanse betina yang sedang berbaris. Luchu sendiri
dalam memilih simpanse betina memiliki kriteria-kriteria tertentu. Luchu
menyukai simpanse betina yang memiliki tinggi badan yang lebih pendek
darinya, tapi juga bisa menerima simpanse betina yang memiliki tinggi
badan sedikit lebih tinggi darinya. Luchu akan menolak simpanse betina
yang memiliki tinggi badan yang sama tinggi seperti dirinya. Tugas anda
adalah membantu Luchu dalam memilih simpanse-simpanse betina yang
sesuai kriterianya.
Masukan
Terdapat dua baris untuk masukan ini.
- Baris pertama menandakan sejumlah tinggi badan simpanse betina tersebut, kita andaikan tinggi badan simpanse-simpanse betina tersebut unik
(tidak ada dua simpanse yang tinggi badannya sama).
- Baris kedua menandakan sejumlah tinggi badan Luchu.
Keluaran
Keluarannya berupa sejumlah baris sesuai dengan jumlah tinggi badan Luchu.
Setiap baris terdiri dari dua angka dimana angka pertama menanda simpanse betina dengan tinggi badan paling tinggi tapi tidak lebih tinggi atau
sama dengan Luchu, sedangkan angka kedua menandakan simpanse betina
dengan tinggi badan paling rendah tapi lebih tinggi dari Luchu.
Jika tidak ada simpanse betina yang cocok maka berikan tanda x

Test Case 1
Masukan
7541
4 6 8 10
Keluaran
15
57
7X
7X

Test Case 2
Masukan
98213
1 7 10
Keluaran
6

X2
38
9X

Anda mungkin juga menyukai