#include<stdio.h>
static int a,b,c,i;
void cal(char x,char z)
{
if(x=='A')
a--;
else if(x=='B')
b--;
else
c--; if(z=='A')
a++;
else if(z=='B')
b++;
else
c++;
}
void hanoi(int n,char x,char y,char z)
{
if(n==1)
{
cal(x,z);
i++;
printf("%d.Move plate %d from %c to %c -- A:%d B:%d C:%d\n",i,n,x,z,a,b,c);
}
else
{
hanoi(n-1,x,z,y);
cal(x,z);
i++;
printf("%d.Move plate %d from %c to %c -- A:%d B:%d C:%d\n",i,n,x,z,a,b,c);
hanoi(n-1,y,x,z);
}
}
void main()
{
int n;
printf("Number of plate:");
scanf("%d",&n);
a=n;
b=c=0;
i=0;
hanoi(n,'A','B','C');
}
static int a,b,c,i;
void cal(char x,char z)
{
if(x=='A')
a--;
else if(x=='B')
b--;
else
c--; if(z=='A')
a++;
else if(z=='B')
b++;
else
c++;
}
void hanoi(int n,char x,char y,char z)
{
if(n==1)
{
cal(x,z);
i++;
printf("%d.Move plate %d from %c to %c -- A:%d B:%d C:%d\n",i,n,x,z,a,b,c);
}
else
{
hanoi(n-1,x,z,y);
cal(x,z);
i++;
printf("%d.Move plate %d from %c to %c -- A:%d B:%d C:%d\n",i,n,x,z,a,b,c);
hanoi(n-1,y,x,z);
}
}
void main()
{
int n;
printf("Number of plate:");
scanf("%d",&n);
a=n;
b=c=0;
i=0;
hanoi(n,'A','B','C');
}
