您的位置:首页 > 其它

B1022:D进制的A+B(20')

2018-03-18 20:06 239 查看


思路:辗转相除法。两个注意点:1.A,B范围没超int型(<=2^31-1),但是加起来可能会超,用long long型(<=2^63-1)。2.用do while,因为可能一上来就是0。#include<stdio.h>
int main(){
long long A,B;
int D,i=0;
int a[100];
scanf("%lld%lld%d",&A,&B,&D);
A=A+B;
do{
a[i++]=A%D;
A=A/D;
}
while(A!=0);
for(i=i-1;i>=0;i--){
printf("%d",a[i]);
}
return 0;
}版权声明:本文为博主原创文章,未经博主允许不得转载。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息