大数加法 HDU 1002
Posted xiao-xue-di
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数加法 HDU 1002相关的知识,希望对你有一定的参考价值。
#include <iostream> #include <cstring> #include <string> #include <cstdio> #include <algorithm> using namespace std; string bigmun(string a,string b){ string c; reverse(a.begin(),a.end()); reverse(b.begin(),b.end()); char ans[2000]; int l=0,plus=0,i; char x[2000]; for(i=0;i<max(a.size(),b.size())-min(a.size(),b.size());i++){ x[i]=‘0‘; } x[i]=‘ ‘; string xx=x; if(a.size()<b.size()){ a=a+xx; } else{ b=b+xx; } for(i=0;i<min(a.size(),b.size());i++){ int x=a[i]-‘0‘; int y=b[i]-‘0‘; int z=x+y; z+=plus; plus=0; ans[l++]=z%10+‘0‘; plus+=z/10; } if(plus!=0){ ans[l++]=plus+‘0‘; } ans[l]=‘ ‘; c=ans; reverse(c.begin(), c.end()); return c; } int main(){ int n; scanf("%d",&n); int Case; Case=1; while (n--) { string a,b,c; cin>>a>>b; c=bigmun(a,b); printf("Case %d: ",Case++); if(n!=0){ cout<<a<<" "<<"+"<<" "<<b<<" "<<"="<<" "<<c<<endl; cout<<endl; } else{ cout<<a<<" "<<"+"<<" "<<b<<" "<<"="<<" "<<c<<endl; } } return 0; }
以上是关于大数加法 HDU 1002的主要内容,如果未能解决你的问题,请参考以下文章
题解报告:hdu 1002 A + B Problem II(大数加法)