这个是AW扣分情况 这是源代码:
#include<bits/stdc++.h>
using namespace std ;
long long n , a[123456] , m , q , s1 , s2 , sum1 , sum2 , force[123456] , minn=1e+8 , num ;
int main() {
// freopen("1.in","r",stdin) ;
// freopen("1.out","w",stdout);
cin >> n ;
for(int i=1; i<=n; i++) {
cin >> a[i] ;
}
cin >> m >> q >> s1 >> s2 ;
a[q] += s1 ;
for(int i=1; i<=n; i++) {
if(i<m) {
force[i] = a[i]*(m-i) ;
sum1 += force[i] ;
} else if(i>m) {
force[i] = a[i]*(i-m) ;
sum2 += force[i] ;
}
}
if(sum1>sum2) {
for(int i=m; i<=n; i++) {
int temp = force[i] ;
temp += (a[i]+s2)*(i-m) ;
if(minn>abs(temp+sum2-force[i]-sum1)) {
minn = abs(temp+sum2-force[i]-sum1) ;
num = i ;
}
}
} else if(sum2>sum1) {
for(int i=1; i<=m; i++) {
int temp ;
temp = (a[i]+s2)*(m-i) ;
if(minn>abs(temp+sum1-force[i]-sum2)) {
minn = abs(temp+sum1-force[i]-sum2) ;
num = i ;
}
}
}
if(!num||minn>abs(sum1-sum2)){
cout << m ;
return 0 ;
}
cout << num ;
有没有大佬帮助一下QWQ