Gim anak-anak tertentu, sering disebut "Huckle Buckle Beanstalk", dimainkan dengan dua pemain. Berikut adalah deskripsi singkat tentang bagaimana permainan itu dimainkan:
- Satu pemain ditunjuk sebagai "penyembunyi", dan yang lainnya "pencari".
- Pencari keluar dari ruangan sementara penyembunyi menyembunyikan benda kecil yang dipilih sebelumnya, "harta".
- Penyembunyi kemudian mencoba mencari objek sementara pencari memberi mereka petunjuk bermanfaat:
- Jika pencari mendekati harta, penyembunyi akan memanggil "lebih hangat!"
- Jika pencari bergerak menjauh dari harta karun, penyembunyi akan memanggil "dingin!"
- Begitu pencari menemukan harta itu, mereka mengumumkan bahwa mereka telah menemukannya.
Anak-anak Anda ingin Anda bermain game ini dengan mereka, namun, Anda sangat sibuk menjawab pertanyaan pada codegolf.SE sebagai gantinya. Jadi, Anda memutuskan untuk menulis program untuk bermain game dengan mereka. Namun, Anda ingin menggunakan waktu sesedikit mungkin mengetik, jadi Anda mencoba membuat program sesedikit mungkin karakter.
Kita dapat mendefinisikan ruang di mana game dimainkan sebagai bidang persegi toroidal dua dimensi. Koordinat 0,0
adalah sudut kiri bawah, dan koordinat 99,99
adalah sudut kanan atas. Harta itu ditempatkan pada posisi tertentu di n,m
mana n
dan m
keduanya bilangan bulat positif antara 0 dan 99 inklusif.
Program Anda akan mendapatkan input dari pemain menggunakan fungsi input pengguna inbuilt-nya (mis prompt()
. raw_input()
, Dll.) Jika bahasa yang Anda pilih tidak memiliki fungsi input pengguna, ambil input dari STDIN sebagai gantinya. Gim akan bekerja sebagai berikut:
- Program "menyembunyikan" harta karun pada suatu posisi
n,m
. - Program meminta pencari untuk memasukkan posisi pencarian awal. Input akan datang dalam bentuk di
x y
manax
dany
bilangan bulat positif. - Program menghasilkan "benar" jika posisi pencarian awal
x,y
sama dengan posisi hartan,m
dan berakhir. Jika tidak: - Program akan meminta pencari untuk pindah. Input datang dalam bentuk
a b
di manaa
danb
adalah bilangan bulat yang mungkin negatif . Ini mewakili vektor arah yang dicari oleh pencari (a
adalah arah x danb
adalah arah y). - Jika posisi yang dihasilkan dari pencari berada di harta karun, program output "benar" dan berakhir. Jika tidak:
- Program menghasilkan "pendingin" jika pencari bergerak menjauh dari harta karun, atau "lebih panas" jika mereka bergerak menuju harta karun.
- Lanjutkan ke langkah 4.
Kata-kata "bergerak menjauh" dan "bergerak ke arah" mungkin bersifat ambisius. Untuk tantangan ini, jika posisi yang dihasilkan dari pencari setelah bergerak lebih dekat ke harta daripada posisi mereka sebelum mereka bergerak, mereka bergerak menuju harta. Kalau tidak, mereka akan pindah. (Ya, ini berarti bahwa jika posisi resultan dan sebelumnya berada pada jarak yang sama, program akan menampilkan "cooler").
Ini kode golf, jadi kode terpendek menang. Ajukan pertanyaan jika spesifikasinya tidak jelas.