1022. D进制的A+B (20)
时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue
输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数。
输入格式:
输入在一行中依次给出3个整数A、B和D。
输出格式:
输出A+B的D进制数。
输入样例:
123 456 8
输出样例:
1103
乙级题都是细节题
思路:看这数据范围,得用longlong,然后写个函数表示D进制
1 #include<bits/stdc++.h> 2 using namespace std; 3 char digits[]= {‘0‘,‘1‘,‘2‘,‘3‘,‘4‘,‘5‘,‘6‘,‘7‘,‘8‘,‘9‘}; 4 void convert(long long y,long long x) 5 { 6 if(x!=0) 7 { 8 convert(y,x/y); 9 printf("%c",digits[x%y]); 10 } 11 } 12 int main() 13 { 14 long long a,b; 15 int d; 16 scanf("%lld%lld%d",&a,&b,&d); 17 if(a+b==0) 18 printf("0\n"); 19 else 20 { 21 int s=a+b; 22 convert(d,s); 23 printf("\n"); 24 } 25 26 return 0; 27 }
时间: 2024-11-01 19:20:02