当时信奥老师叫我们做出A+B高精,于是我就做了一波
第一版:WA60
从高往低位。如果碰到进位后面加一下1,注意归零
还有字符串转字符。
#include<bits/stdc++.h>
using namespace std;
int g(char w){
int t='1'-1,d;
d=w-t;
return d;
}
int y(int a,int b){
return a>b?a:b;
}
int main(){
int s[8192],t[8192],u[8192],a,b;
string str1,str2;
cin>>str1>>str2;
memset(s,0,sizeof(s));
memset(t,0,sizeof(t));
memset(u,0,sizeof(u));
for(int i=0;i<str1.size();i++){
//从后往前
a=g(str1[i]);
s[str1.size()-(i+1)]=a;
}
for(int i=0;i<str1.size();i++){
a=g(str2[i]);
t[str2.size()-(i+1)]=a;
}
/*for(int i=0;i<str1.size();i++) cout<<s[i];
for(int i=0;i<str2.size();i++) cout<<t[i]; */
int max=y(str1.size(

博主分享了在解决A+B高精度问题时的经历,从最初的WA错误到逐步改进,最终实现AC。过程中遇到了字符串转换、进位处理、特判等难点,并通过调整思路实现了数字大小位数不同的情况下的正确相加。
&spm=1001.2101.3001.5002&articleId=107092451&d=1&t=3&u=6cadf33d51194723b3b4f1e2fbac73a1)
424

被折叠的 条评论
为什么被折叠?



