“自动识别语言”居然被判了编译错误……
查看原帖
“自动识别语言”居然被判了编译错误……
1132921
zhanghdave楼主2023/11/14 19:57

选C++98编译器能AC的代码,自动识别语言居然告诉我编译错误……哪个大佬能帮看看这个编译怎么就能出错了?

#include <iostream>

using namespace std;

const int MAX = 100001;

long long abs(long long a)
{
	return (a >= 0) ? a : -a;
}

int main()
{
	int n, m, p1, p2, s1, s2;
	long long camp[MAX][2], diff[MAX], momentum[2] = { 0 };
	
	cin >> n;
	for (int i = 1; i <= n; i++) cin >> camp[i][0];
	cin >> m >> p1 >> s1 >> s2;
	
	camp[p1][0] += s1;
	
	for (int i = 1; i <= m; i++) {
		camp[i][1] = m - i;
		momentum[0] += camp[i][0] * camp[i][1];
	}
	
	for (int i = m + 1; i <= n; i++) {
		camp[i][1] = i - m;
		momentum[1] += camp[i][0] * camp[i][1];
	}
	
	p2 = m;
	diff[m] = abs(momentum[0] -  momentum[1]);
	
	if (momentum[0] > momentum[1]) {
		for (int i = m + 1; i <= n; i++) {
			diff[i] = abs(momentum[0] - momentum[1] - s2 * camp[i][1]);
			
			if (diff[i] < diff[p2]) p2 = i;
			else break;
		}
	}
	else if (momentum[0] < momentum[1]) {
		for (int i = m - 1; i > 0; i--) {
			diff[i] = abs(momentum[0] + s2 * camp[i][1] - momentum[1]);
			
			if (diff[i] < diff[p2]) p2 = i;
			else break;
		}
	}
	
	cout << p2;
	
	return 0;
}
2023/11/14 19:57
加载中...