Sabtu, 20 November 2010

Kunci Koper

level: 63/100
nama file: kunci.pas

Deskripsi
Liam Si Kasep baru saja membeli sebuah koper canggih. Koper canggih tersebut memiliki sistem pengamanan password yang terdiri dari 4 digit angka 0 sampai 9. Liam pun mengeset password kopernya. Sialnya saat ia mau membuka kopernya, ia lupa password koper itu. Yang ia ingat adalah password yang telah ia set terdiri dari 4 digit angka yang berbeda dan berurutan dari kecil ke besar. Untungnya koper canggih itu punya cara untuk “mengingatkan” password.


Koper itu akan merespon jika password yang dimasukkan salah. Jika semua digit password itu salah, maka layar koper akan mengeluarkan “-“ (tanpa kutip). Namun jika ada angka yang benar atau hanya posisinya yang salah, maka koper akan mengeluarkan “x” (tanpa kutip) untuk setiap angka yang benar dan posisinya tepat dan mengeluarkan “?” (tanpa kutip) untuk setiap angka yang benar namun posisinya salah. Misalnya untuk password 1234


Tebakan
0567
Respon
-

Tebakan
0138
Respon
?x

Tebakan
4032
Respon
?x?


Bantulah Liam untuk membuka kopernya dengan jumlah penebakan password tidak lebih dari 10 kali!

Masukan dan Keluaran
Soal ini adalah soal interaktif, yang berarti program ini akan diuji dengan program lain. Output dari program pengetes akan menjadi input bagi program ini, begitu pula sebaliknya. Program ini dimulai dengan memberikan password tebakan. Tebakan ini akan direspon oleh program penguji dengan memberikan input sesuai aturan pada deskripsi. Program baru berakhir sampai program penguji memberikan input “xxxx” (tanpa kutip), yang berarti password telah tepat. Password koper dijamin terdiri dari 4 digit berbeda terurut dari kecil ke besar.

Contoh
baris genap : input
baris ganjil : output
0987
-
1234
??
2345
x??
2356
xxx
2456
xxxx
(program berhenti)

Penjelasan
Pada contoh diatas, password koper adalah 2456.

Tidak ada komentar:

Posting Komentar