CE了,求调
查看原帖
CE了,求调
1214348
Wardin楼主2024/1/17 22:11

为什么会编译错误?自己编译器编译都没有问题。

#include <bits/stdc++.h>
using namespace std;
char j1c[2000], j2c[2000];
int j1[2000], j2[2000], h[2000];
int main()
{
	int b;
	cin >> b >> j1c >> j2c;
	int lena = strlen(j1c), lenb = strlen(j2c);
	for (int i = 0; i < lena; i ++)
	{
		if (j1c[i] >= '0' && j1c[i] <= '9')
		{
			j1[lena - i] = j1c[i] - 48;
		}
		else
		{
			j1[lena - i] = j1c[i] - 54;
		}
	}
	for (int i = 0; i < lenb; i ++)
	{
		if (j2c[i] >= '0' && j2c[i] <= '9')
		{
			j2[lenb - i] = j2c[i] - 48;
		}
		else
		{
			j2[lenb - i] = j2c[i] - 54;
		}
	}
	int lenc = 1, x = 0;
	while (lenc <= lena || lenc <= lenb)
	{
		h[lenc] = j1[lenc] + j2[lenc] + x;
		x = h[lenc] / b;
		h[lenc] %= b;
		lenc ++;
	}
	h[lenc] = x;
	while (h[lenc] == 0 && lenc > 1) lenc --;
	for (int i = lenc; i >= 1; i --)
	{
		cout << h[i];
	}
}

思路就是高精,只不过是把进位和保留个位的10换成了b。

我不知道思路正不正确,但是首先,为什么CE了呢?

2024/1/17 22:11
加载中...