52(红配绿)
查看原帖
52(红配绿)
1373929
syy999楼主2024/10/2 16:30
#include<bits/stdc++.h>
using namespace std;
int c[100001],n,m,p1,s1,s2;
int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++) cin>>c[i];
	cin>>m>>p1>>s1>>s2;
	int q1=0,q2=0;
	for(int i=1;i<m;i++) q1+=(m-i)*c[i];
	for(int i=n;i>m;i--) q2+=(i-m)*c[i];
	if(p1<m) q1+=(m-p1)*s1;
	else if(p1>m) q2+=(p1-m)*s1;
	int p1,p2,c=abs(q1-q2),t=-1;
	if(q1==q2){
		cout<<m;
		return 0;
	}
	for(int i=1;i<=n;i++){
		p1=q1;
		p2=q2;
		if(i<m) p1=p1+(m-i)*s2;
		else if(i>m) p2=p2+(i-m)*s2;
		if(abs(p1-p2)<c){
			c=abs(p1-p2);
			t=i;
		}
	}
	cout<<t;
	return 0;
}


2024/10/2 16:30
加载中...