2013年11月2日 星期六

TIOJ 1356 河內之塔-便當塔

[D&C]



#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int prc=0;
void MSG(int a,int b)
{
    prc++;
    printf("#%d : move the dish from #%d to #%d\n",prc,a,b);
}
void move(int a,int to)
{
    if(a==1)
    {
        MSG(4-to,2);
        MSG(2,to);
        return;
    }
    move(a-1,to);
    MSG(4-to,2);
    move(a-1,4-to);
    MSG(2,to);
    move(a-1,to);
}
int main()
{
    int a;scanf("%d",&a);
    move(a,3);
    return 0;
}

沒有留言:

張貼留言