hdu/hdoj 1002 A + B Problem II
发布时间:2020-12-14 04:01:07 所属栏目:大数据 来源:网络整理
导读:这种题一看就知道是大数问题,可能需要的是前导‘0’的处理。注意处理格式,这样一般就ac了 #include iostream#include cstring#include string#include stdio.husing namespace std;string Add(string fNum,string sNum){ if( fNum.length() sNum.length()
这种题一看就知道是大数问题,可能需要的是前导‘0’的处理。注意处理格式,这样一般就ac了 #include <iostream> #include <cstring> #include <string> #include <stdio.h> using namespace std; string Add(string fNum,string sNum) { if( fNum.length() < sNum.length() ) fNum.swap(sNum); string A = "0"; A += fNum; for ( int i=1;i<=fNum.length();i++) if(i<=sNum.length()) A[A.length()-i]+=sNum[sNum.length()-i]-'0'; for( int i=1;i<A.length();i++) { if(A[A.length()-i]>'9') { A[A.length()-i]-=10;A[A.length()-i-1]+=1; } } while(A[0]=='0') A.erase(0,1); return A; } int main () { string a,b; int t; cin>>t; int ncount=1; int flag=false; while (t--) { cin>>a>>b; string re=Add(a,b); if (flag==true) cout<<endl; if (flag==false) { flag=true; } printf("Case %d:n",ncount++); cout<<a<<" + "<<b<<" = "<<re<<endl; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |