微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

A + B Problem II 1002 hdu 大数模板

题目http://acm.hdu.edu.cn/showproblem.PHP?pid=1002


大数相加模板(头文件string)

string add(string s1,string s2) 

     
   int j,l,la,lb; 
    string max,min;  
    max=s1;min=s2; 
    if(s1.length()<s2.length()) {max=s2;min=s1;} 
    la=max.size();lb=min.size(); 
    l=la-1; 
    for(j=lb-1;j>=0;j--,l--) max[l] += min[j]-'0';  
    for(j=la-1;j>=1;j--) if(max[j]>'9'){max[j]-=10;max[j-1]++;} 
    if(max[0]>'9') {max[0]-=10;max='1'+max;} 
    return max; 
}



1002代码

#include<iostream> #include<cstring> using namespace std; string add(string s1,string s2) {          int j,lb;     string max,min;       max=s1;min=s2;     if(s1.length()<s2.length()) {max=s2;min=s1;}     la=max.size();lb=min.size();     l=la-1;     for(j=lb-1;j>=0;j--,l--) max[l] += min[j]-'0';       for(j=la-1;j>=1;j--) if(max[j]>'9'){max[j]-=10;max[j-1]++;}     if(max[0]>'9') {max[0]-=10;max='1'+max;}     return max; } int main() {     int t,i=1;     cin>>t;     string a,b;     while(t--)     {                  cin>>a>>b;         cout<<"Case "<<i++<<":"<<endl;         cout<<a<<" + "<<b<<" = "<<add(a,b)<<endl;         if(t!=0)         cout<<endl;     }          return 0; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐