-
题目描述:
-
输入两个不超过整型定义的非负10进制整数A和B(<=231-1),输出A+B的m (1 < m <10)进制数。
-
输入:
-
输入格式:测试输入包含若干测试用例。每个测试用例占一行,给出m和A,B的值。
当m为0时输入结束。
-
输出:
-
输出格式:每个测试用例的输出占一行,输出A+B的m进制数。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
不认真看题害死人啊。。。注意特殊情况,就是A,B为0的时候,就无法进入循环,在写循环的时候就应该察觉到。
#include<stdio.h>
#include<stack>
using namespace std;
stack<int>s;
int main()
{
unsigned int a,b,m;
long long result;
while(scanf("%d",&m)!=EOF)
{
if(m==0)
break;
scanf("%d%d",&a,&b);
result=a+b;
if(result==0)
{
printf("0\n");
}
else
{
while(result)
{
s.push(result%m);
result/=m;
}
while(!s.empty())
{
printf("%d",s.top());
s.pop();
}
printf("\n");
}
}
return 0;
}