92分求助
查看原帖
92分求助
494192
ChickenDrinkingMilk楼主2022/1/3 17:53
#include<bits/stdc++.h>
using namespace std;
int k;
string x;
int a[5905],b[5905],ans[5905],an,bn;
void init(){
	cin>>k>>x;
	a[++an]=1;
	for (int i=1;i<=k;i++) a[++an]=0;
	for (int i=1;i<=x.length();i++)
		b[++bn]=x[i-1]-'0';
	
	for (int i=1,j=an;i<j;i++,j--) swap(a[i],a[j]);
	for (int i=1,j=bn;i<j;i++,j--) swap(b[i],b[j]);
} 
int main(){
	init();
	int jw=0;
	for (int i=1;i<=max(an,bn);i++){
		if (a[i]+b[i]+jw>=10){
			ans[i]=(a[i]+b[i])%10+jw;
			jw=1;
		} else {
			ans[i]=a[i]+b[i]+jw;
			jw=0;
		}
	}
	if (jw==1) ans[max(an,bn)+1]=1;
	for (int i=max(an,bn)+jw;i>=1;i--) 			cout<<ans[i];
} 
2022/1/3 17:53
加载中...