第10个 WA 90
查看原帖
第10个 WA 90
917793
BQianYi楼主2023/6/3 13:10
#include<bits/stdc++.h>
using namespace std;
int a[10500],b[10500],c[10500];
string n,m;
int main()
{
	int flag=1;
	int len=0;
	//shuru
	cin>>n>>m;
	//chuli
		//size of data
		if(n.length()<m.length()||(n.length()==m.length()&&n<m))
		{
			len=m.length();
			swap(n,m);
			flag=-1;
		}
		else
			len=n.length();
		//move data
		int j=n.length();
		for(int i=0;i<len;i++)
			if(n[--j]-'0'>=0)
				a[i]=n[j]-'0';
				
		j=m.length();
		for(int i=0;i<len;i++)
			if(m[--j]-'0'>=0)
				b[i]=m[j]-'0';
		//jisuan
		for(int i=0;i<len;i++)
		{
			c[i]+=a[i]-b[i];
	        if(c[i]<0)                                                                                                                                                                                                                                                                                                                                         		if(c[i]<0)
			{
				a[i+1]-=1;
				c[i]+=10;
			}
		}
	//shuchu
	if(flag==-1)
		cout<<"-";
	for(int i=len-1;i>=0;i--)
	{
		if(i==len-1&&c[i]==0)
			while(c[i]==0)
			{
				if(i==0)
				{
					cout<<"0";//bug1 最后0 
					flag=0;
				}
				i--;
			}
		if(flag==0)
			break;
		cout<<c[i];
	}
	return 0;
   
}
2023/6/3 13:10
加载中...