[20] Walking Wombat Warrior (QUAS01)

advertisement
[20] Walking Wombat Warrior (QUAS01)
Wombat warrior baru saja selesai berperang, ia sudah sangat
kelelahan. Sekarang saatnya untuk berjalan pulang ke rumah,
namun ia harus melewati hutang yang penuh dengan binatang
buas. Setiap kali bertemu binatang buas, ia harus bertarung dan
menghabiskan sejumlah energy. Selain itu, karena wombat
memiliki pengetahuan arah yang baik, maka ia hanya bisa
bergerak mengikuti kompas, yaitu menuju rumahnya. Bantulah
wombat warrior untuk mencari jalan pulang dengan sesedikit
mungkin energy yang harus dikeluarkan!
Hutan yang dilewati wombat warrior dapat digambarkan
sebagai kotak berukuran NxM. Titik awal wombat warrior
berada adalah cell paling kiri atas peta, rumah wombat warrior
berada di cell paling kanan bawah. Setiap petak lain dapat berisi
batu, yang artinya tidak dapat dilewati, atau binatang buas yang
harus dilawan, atau tidak berisi apapun. Arah pergerakan
wombat hanyalah ke kanan atau ke bawah.
Sebagai contoh, perhatikan gambar di atas. Jika wombat warrior bergerak mengikuti jalur merah, maka ia harus
mengeluarkan energy 3, tapi jika mengikuti jalur biru, ia hanya menggunakan energy 1 (pada kasus ini sudah
optimal). Jika pada awalnya wombat warrior memiliki energy 3, maka ia dapat pulang dengan sisa energy maksimal 2.
Spesifikasi Input
Input diawali dengan tiga buah bilangan bulat E, N dan M (1 ≤ E, N, M ≤ 1000). E menyatakan energy awal yang
dimiliki wombat warrior. N dan M menyatakan ukuran baris dan kolom pada hutan. N Baris berikutnya masingmasing berisi M buah bilangan bulat yang berkisar antara -1 s.d 20. Angka -1 menyatakan cell tersebut berisi batu.
Angka 0 menyatakan cell tersebut kosong. Angka 1-20 menyatakan cell tersebut berisi binatang buas yang harus
dilawan dengan menghabiskan energy sebanyak angka tersebut.
Spesifikasi Output
Jika wobat warrior berhasil pulang tanpa kehabisan energy (sisa energy minimal 1), maka tuliskan sisa energy
maksimal yang mungkin dimiliki olehnya (berarti ia harus melewati jalur dengan sesedikit mungkin binatang buas).
Jika wombat warrior tidak mungkin pulang, karena seluruh jalur tertutup batu atau terlalu banyak binatang buas,
tuliskan “DEAD”.
Contoh Input
3 6 6
0 1 0 0 1 0
-1 0 2 0 0 -1
1 -1 -1 2 0 1
0 1 0 0 0 1
0 -1 3 0 0 0
2 0 1 -1 1 0
Contoh Output
2
[20] Is It A Heap ? (QUAS02)
Diberikan sebuah array bilangan bulat yang berukuran N, tentukanlah apakah array tersebut memenuhi sifat
Minimum-Heap atau tidak! Jika tidak, ubahlah array tersebut menjadi heap.
Spesifikasi Input
Input diawali dengan sebuah bilangan bulat N (2 ≤ N ≤ 100.000) yang menandakan ukuran array. Baris berikutnya
berisi N buah bilangan bulat Xi (0 ≤ Xi ≤ 1.000.000) yang menunjukan nilai elemen array ke-i.
Spesifikasi Output
Jika array pada input bersifat Minimum-Heap, keluarkan tulisan “MINIMUM”. Jika array pada input tidak memiliki
sifat heap, keluarkan sebuah array yang memiliki elemen-elemen sama seperti pada input, tapi sudah bersifat
Minimum-Heap.
Contoh Input #1
6
1 5 4 8 6 7
Contoh Output #1
MINIMUM
Contoh Input #2
3
4 5 3
Contoh Output #2
3 5 4
Download