//如果倒叙,那我是否回得到\0为第一个?
//Q:可以读入字符串,但是到后面就莫名奇妙消失; 且acicc码值的转化也需要处理;
#include<stdio.h>
#include<string.h>
#include<math.h>
char num[10086] ;
int main()
{
int k;
scanf("%d",&k);
while(k--)
{
scanf("%s",num);
int n=strlen(num);
// printf("%d长度\n",n);//调试代码
double sum=0;
for(int i=0;i<n;i++)
{
if(num[i]=='-')
{
num[i]=-1;
}
else num[i]=num[i]-48;
sum+=(pow(3.0,n-i-1)* (int) num[i]);
// printf("%c数组的值\n",num[i]);//前面没问题;问题在于相乘等于0;
// printf("%lf次方的值\n",pow(3.0,n-i));
//printf("%.0lf累加的值\n",sum);
}
printf("%.0lf\n",sum);
memset(num,0,sizeof(num));
}
return 0;
}
XTU 1140 平衡三进制
最新推荐文章于 2024-08-10 15:05:30 发布