Sizə klassik Hanoy qüllələri məsələsi verilir:
Üç dirək və fərqli ölçülərdə dairəvi disk var ( ən kiçik, ən böyük disktir). Bütün disklər başlanğıcda dirəyində yığılıb və məqsəd bütün qülləni dirəyinə köçürməkdir. Hər addımda yalnız bir diski bir dirəkdən digərinə köçürmək olar; böyük diski heç vaxt kiçik diskin üstünə qoymaq olmaz. Dirəklərin adları , və -dir.
Bu məsələnin yaxşı bilinən rekursiv həlli aşağıdakı kimidir:
move(num_disks, from_post, spare_post, to_post)
if (num_disks == 0)
return
move(num_disks--1, from_post, to_post, spare_post)
print("Move disk ", num_disks, " from ", from_post, " to ", to_post)
move(num_disks--1, spare_post, from_post, to_post)Verilmiş və üçün bu rekurent həllin -cı hərəkətini müəyyən edin.
Hər sətirdə iki tam ədəd var: və . Giriş iki sıfırdan ibarət sətrlə bitir. Bütün girişlər düzgündür. və müsbət tam ədədlərdir, k < 2^n, n \leq 60.
Hər test üçün -cı hərəkəti aşağıdakı formatda çıxarın:
Case :
— testin nömrəsi (1-dən başlayaraq), — disk nömrəsi, — başlanğıc dirəyinin adı, — təyinat dirəyinin adı. Cavabın hissələrini bir boşluqla ayırın; sətirin sonunda boşluq olmamalıdır.
Nümunə 1