求助高精度减法
  • 板块题目总版
  • 楼主CLY__Blue
  • 当前回复1
  • 已保存回复1
  • 发布时间2022/7/25 21:41
  • 上次更新2023/10/27 18:25:25
查看原帖
求助高精度减法
749826
CLY__Blue楼主2022/7/25 21:41

一本通上可以,这里不行(超时) 代码:

#include<iostream>
#include<math.h>
using namespace std;
string xxx(string a,string b)
{
int la=a.size(),lb=b.size(),c[1001],d[1001];
string ss="";
for(int k=0;k<la;k++)c[k]=a[la-k-1]-'0';
for(int k=0;k<lb;k++)d[k]=b[lb-k-1]-'0';

if(la<lb)la=lb;

for(int i=0;i<lb;i++){
	if(c[i]<d[i]){
		c[i]+=10;
		c[i+1]--;
	}
	c[i]=c[i]-d[i];
	while(c[la-1]==0)la--;
	if(la==0)la=1;
}
for(int i=la-1;i>=0;i--)ss+='0'+c[i];
return ss;
}
int main(){
string aa,bb;
cin>>aa>>bb;
cout<<xxx(aa,bb);
}
2022/7/25 21:41
加载中...