#include <bits/stdc++.h>
using namespace std;
int n, m, p1, s1, s2;
int a[100001];
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> a[i];
}
cin >> m >> p1 >> s1 >> s2;
long long sum1 = 0, sum2 = 0;
int ans = 0, z = INT_MAX;
a[p1] += s1;
for (int i = 1; i < m; i++) {
sum1 += a[i] * (m - i);
}
for (int i = m + 1; i <= n; i++) {
sum2 += a[i] * (i - m);
}
for (int i = 1; i <= n; i++) {
int sum11 = sum1, sum22 = sum2;
if (i != m) {
if (i > m) {
sum2 -= a[i] * (i - m);
sum2 += (a[i] + s2) * (i - m);
} else {
sum1 -= a[i] * (m - i);
sum1 += (a[i] + s2) * abs(i - m);
}
}
if (sum1 == sum2) {
ans = i;
break;
}
if (abs(sum1 - sum2) < z) {
z = abs(sum1 - sum2);
ans = i;
}
// cout << sum1 << " " << sum2 << " " << z << endl;
sum1 = sum11;
sum2 = sum22;
}
cout << ans;
}
为什么从21个点后都WA了呢