#include <stdio.h>
#include <math.h>
void hanoi_tower(int n, char from, char tmp, char to)
{
if( n
==1 ) printf("%c %c\n",from
,to
); else {
hanoi_tower(n-1, from, to, tmp);
hanoi_tower(n-1, tmp, from, to);
}
}
int main(void)
{
int i;
hanoi_tower(i, '1', '2', '3');
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxtYXRoLmg+CnZvaWQgaGFub2lfdG93ZXIoaW50IG4sIGNoYXIgZnJvbSwgY2hhciB0bXAsIGNoYXIgdG8pCnsKCWlmKCBuPT0xICkgcHJpbnRmKCIlYyAlY1xuIixmcm9tLHRvKTsKCWVsc2UgewoJCWhhbm9pX3Rvd2VyKG4tMSwgZnJvbSwgdG8sIHRtcCk7CgkJcHJpbnRmKCIlYyAlY1xuIixmcm9tLCB0byk7CgkJaGFub2lfdG93ZXIobi0xLCB0bXAsIGZyb20sIHRvKTsKCX0KfQppbnQgbWFpbih2b2lkKQp7CglpbnQgaTsKCXNjYW5mKCIlZCIsJmkpOwoJcHJpbnRmKCIlZFxuIiwoaW50KXBvdygyLGkpLTEpOwoJaGFub2lfdG93ZXIoaSwgJzEnLCAnMicsICczJyk7CglyZXR1cm4gMDsKfQ==