求助80分
查看原帖
求助80分
682044
czk111楼主2022/8/17 17:09
#include <bits/stdc++.h>
using namespace std;
long long n,m,p1,s1,s2,a[100005],l,h,b[100005];
int lon(){
	int sum=0;
	for(int i=1;i<m;i++) sum+=b[i];
	return sum;
}
int hu(){
	int sum=0;
	for(int i=m+1;i<=n;i++) sum+=b[i];
	return sum;
}
void sl(){
	for(int i=1;i<=n;i++){
		if(i!=m){
			b[i]=abs(m-i)*a[i];
		}
	}
}
int main(){
	freopen("p5016_21.in","r",stdin);
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	cin>>m>>p1>>s1>>s2;
	a[p1]+=s1;
	int minn=0xffffff,x;
	sl();
	l=lon();
	h=hu();
	for(int i=1;i<=n;i++){
		if(i<m) l=l+abs(m-i)*s2;
		else if(i>m) h=h+abs(m-i)*s2;
		if(abs(l-h)<minn){
			minn=abs(l-h);
			x=i;
		}
		if(i<m) l=l-abs(m-i)*s2;
		else if(i>m) h=h-abs(m-i)*s2;
	}
	cout<<x;
}

好不容易不TLE了,结果TLE变成了WA

2022/8/17 17:09
加载中...