大佬救我
查看原帖
大佬救我
297479
Irisss楼主2022/12/5 09:55
#include <bits/stdc++.h>

using namespace std;

int num[540];
int num1[540];
int num2[540];
int sum[540];

int main(){
	
//数字的输入与倒序存储过程 
	char c;
	scanf("%c",&c);
	num[1]=c-'0';
	int le;
//存储数字的长度 
	for(int i=2;'0'<=c&&c<='9';){
		scanf("%c",&c);
		num[i]=c-'0';
		i++;
		le=i;
	}
	le--;
	int le1=le-1; 
//	cout<<le1<<endl;
	for(int i=1;i<=le;i++){
//		cout<<num[i]<<" ";
		num1[le-i]=num[i];
	}
//	cout<<endl;
//	for(int i=1;i<=30;i++){
//		cout<<num1[i]<<" ";
//	}
	scanf("%c",&c);
	num[1]=c-'0';
//存储数字的长度 
	for(int i=2;'0'<=c&&c<='9';){
		scanf("%c",&c);
		num[i]=c-'0';
		i++;
		le=i;
	}
	le--;
	int le2=le-1;
//	cout<<le2<<endl;
	for(int i=1;i<=le;i++){
//		cout<<num[i]<<" ";
		num2[le-i]=num[i];
	}
//	cout<<endl;
//	for(int i=1;i<=30;i++){
//		cout<<num2[i]<<" ";
//	}
		
//数字的运算(加法)
    int max=-1;
	if(le1>le2){
		max=le1;
	}
	else max=le2;
	for(int i=1;i<=max+1;i++){
		sum[i]+=num1[i]+num2[i];
		if(sum[i]>=10){
			sum[i]-=10;
			sum[i+1]++;
		}
	}
	if(sum[max+1]!=0){
		max++;
	}
//	cout<<endl;
//	for(int i=1;i<=30;i++){
//		cout<<sum[i]<<" ";
//	}
//	cout<<endl;
	for(int i=1;i<=max;i++){
		cout<<sum[max+1-i];
	}	 
	return 0;
}
2022/12/5 09:55
加载中...