全WA求助QAQ
查看原帖
全WA求助QAQ
74775
MyRhythm楼主2024/4/11 21:54
//高精度 A+B Problem
#include<iostream>
#include<string.h> 
using namespace std;
void reverse(int i, int *sample)
{
	int tmp[501];
	for(int j = 1; j <= i; j++)
	 tmp[j] = sample[i - j + 1]; 
	for(int j = 1; j <= i; j++)
	 sample[j] = tmp[j];
}
int main()
{
	int a[501] = {0}, b[501] = {0};
	int c[501] = {0};
	int i = 0;
	char tem;
	while( 1 )
	 {
	 	tem = getchar();
	 	if( tem == '\n' ) break;
	 	++i;
	 	a[i] = tem - '0';
	 }
	reverse(i, a);
	int j = 0;
	while( 1 )
	 {
	 	tem = getchar();
	 	if( tem == '\n' ) break;
	 	++j;
	 	b[j] = tem - '0';
	 }
	 reverse(j, b);
	 int maxx = i > j ? i : j;
	for(int p = 1; p <= maxx; p++)
	{
		int temp = c[p] + a[p] + b[p];
		c[p + 1] = temp / 10;
		c[p] = temp % 10;
	}
	for(int j = maxx + 1; j > 0 ; j--)
	{
		if( c[j] == 0 && j == maxx + 1 ) continue;
		 else cout << c[j]; 
	}
	return 0;
 } 

尝试了Dev和VScode编译运行,也尝试了把getchar替换成scanf,试了几组输入都是正确的,下载了第一个测试样例,本地跑也是正确的,但洛谷就是怎么都是全WA QAQ

2024/4/11 21:54
加载中...