PAT 乙级 1017 A除以B
题目
使用string来存放大数,解题思路相当于模仿手算
最后有一个需要注意的地方,测试点二是一个a小于b的情况,这种情况商为0,余数为a
#include <iostream> #include<stdio.h> #include<string> #include<algorithm> #include<math.h> using namespace std; int main() { string a; int b; string q=""; long r=0; cin>>a>>b; for(int i=0;i<a.size();i++) { r=r*10+a[i]-48; char c=r/b+48; if(q==""&&c=='0') q=q; else q=q+c; r=r-(r/b)*b; } if(q!="") cout<<q<<" "<<r<<endl; else cout<<0<<" "<<a<<endl; //特殊情况a<b 商为0,余数为a return 0; }

浙公网安备 33010602011771号