大数相加,熟记模板很重要:
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'; //用到加法运算符,全部按照asiic码表来,就会多加一次48,所以要减去ascii值为48的‘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;
· }
大数相加模板
最新推荐文章于 2022-11-20 18:15:16 发布