Masala #0151
Hanoy minorasi
Hanoy minorasi o’yinini ko’pchilik bilsa kerak, shunga qaramasdan yana bir bora eslatib o’tamiz.
Hanoy minorasi 3 ta ustundan iborat, birinchi ustunni A deb, ikkinchi ustunni B deb, uchinchi ustunni esa C deb belgilab olaylik. Sizda N ta disk bor, disklarning har birini diametrlari mos ravishda 1 dan N gacha uzunlikka ega, Hanoy minorasi o’yinida qaysidir diskni ustidan boshqa disk qo’yilmoqchi bo’lsa pastga qolgan diskning diametric yuqoridagi diskning diametridan katta bo’lishi shart. Dastlab barcha disk A ustunda joylashtirilgan. Disklar qaysidir ustundan olinsa boshqa bir ustunga qo’yilishi shart va disklar olinganda bittalab olinadi.
Siz A ustunda turgan barcha diskni “X to K” shaklidagi buyruqlar ketma-ketligi shaklida C ustunga olib o’tishingiz kerak, bu yerda X diskning diametri, K esa ustun nomi.
INPUT.TXT kirish faylida yagona butun son, N(0 < N < 20)
OUTPUT.TXT chiqish faylida A ustundagi barcha diskni C ustunga olib o’tuvchi buyruqlar ketma-ketligini alohida qatorlarda chop eting.
# | input.txt | output.txt |
---|---|---|
1 |
1 |
1 to C |
2 |
2 |
1 to B 2 to C 1 to C |