Sky数
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 11569 Accepted Submission(s): 6704
2992 1234 0
2992 is a Sky Number. 1234 is not a Sky Number.
#include<stdio.h>
int main()
{
int n,s,i,j,t;
while(~scanf("%d",&n)&&n!=0)
{
int m=n;
int a[4]={0},b[4]={0},c[4]={0};
for(i=0;i<4;i++)
{
t=n%10;
a[i]=t;
n/=10;
}
/*for(j=0;j<4;j++)
printf("%d ",a[j]);*/
s=a[0]+a[1]+a[2]+a[3];
i=0;n=m;
while(n!=0)
{
b[i]=n%12;
n=n/12;
i+=1;
} /*for(j=0;j<4;j++)
printf("%d ",b[j]);
printf("%d\n",i);*/
j=0;
if(b[0]+b[1]+b[2]+b[3]==s)
{
n=m;
while(n!=0)
{
c[j]=n%16;
n/=16;
j+=1;
}
}
/* for(j=0;j<4;j++)
printf("%d ",c[j]);*/
if(c[0]+c[1]+c[2]+c[3]==s)
printf("%d is a Sky Number.\n",m);
else
printf("%d is not a Sky Number.\n",m);
}
return 0;
}