社区讨论

请问一下第六个点数据是什么??90(第六个点WA了),求大佬

P2142高精度减法参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@lo8pquv6
此快照首次捕获于
2023/10/27 22:33
2 年前
此快照最后确认于
2023/10/27 22:33
2 年前
查看原帖
C
#include<iostream>
#include<math.h>
using namespace std;
string a, b;
int A[500000]={0}, B[500000] = {0}, C[500000] = {0};
int main()
{
	cin >> a >> b;
	bool f = false;
	int lena = a.length();
	int lenb = b.length();
	for (int i = 0; i < lena; i++)
		A[i] = a[lena - i - 1] - '0';
	for (int i = 0; i < lenb; i++)
		B[i] = b[lenb - i - 1] - '0';
	if (lena < lenb || lena == lenb && a < b)
	{
		f = true;
		swap(A, B);
	}
	int lenc= max(lena, lenb);
	for (int i = 0; i < lenc; i++)
	{
		if (A[i] - B[i] >=0)
		{
			C[i] = A[i] - B[i];

		}
		else
		{
			A[i + 1] -= 1;
			C[i] = A[i] - B[i] + 10;
			
		}
		/*if (A[i] < B[i])
		{
			A[i + 1]--;
			A[i] += 10;
		}
		C[i] = A[i] - B[i];*/
	}
	if (f)cout << "-";
	while (C[lenc-1] == 0 && lenc > 2)
		lenc--;
	for (int i = lenc - 1; i >= 0; i--)
		cout << C[i];
	return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...