2009-06-07 22:34:17來源不明

ACM 11185 11185 - Ternary

作法:進位...

/**********************************************************/

#include<stdio.h>  
#include<stdlib.h>     
main()  
{  
 int n;
 while(scanf("%d",&n)==1&&n>=0)
  {
    if(n==0) printf("0\n");
    else
      {
        int num[50]={0},a,b,c;
        num[0]=n;
        for(a=0;a<=50;a++)
         if(num[a]>=3)
          {
            num[a+1]=num[a]/3;
            num[a]%=3;
          }
         else break;
            for(b=a;b>=0;b--)
            printf("%d",num[b]);
         printf("\n");
      }
  }
 return 0;  
}