当时信奥老师叫我们做出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(),str2