PTA乙级 (1022 D进制的A+B (20分))
Posted jianqiao123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PTA乙级 (1022 D进制的A+B (20分))相关的知识,希望对你有一定的参考价值。
1022 D进制的A+B (20分)
https://pintia.cn/problem-sets/994805260223102976/problems/994805299301433344
解题思路:本题说了a和b值均小于等于2的30次方减一,(2^30-1==1 073 741 823),而整型int占四字节,三十二比特,范围为[-2^31~2^31-1];本题还要考虑若a和b值均为0,则直接输出0.
#include <iostream> #include <cstdio> #include <cstring> #include <string> #include <cmath> #include <algorithm> using namespace std; int main() { int a,b,d,s[100]; cin>>a>>b>>d; int t=a+b,i=0; if(t==0) cout<<0; //没有这句,测试点3答案错误 else{ while(t!=0) { s[i++]=t%d; t/=d; } for(int j=i-1;j>=0;j--) cout<<s[j]; } return 0; }
以上是关于PTA乙级 (1022 D进制的A+B (20分))的主要内容,如果未能解决你的问题,请参考以下文章