80分求助
查看原帖
80分求助
719611
__2304__楼主2023/10/4 23:46
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,c[100005],m,p1,s1,s2,p2;
ll l,r;
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++) cin>>c[i];
	cin>>m>>p1>>s1>>s2;
	c[p1]+=s1;
	for(int i=1;i<=m-1;i++) l+=c[i]*abs(m-i);
	for(int i=m+1;i<=n;i++) r+=c[i]*abs(m-i);
	if(l==r) cout<<m;
	else if(l<r)
	{
		int Min=544544544,dif=r-l;
		for(int i=m;i>=1;i--) if(abs((m-i)*s2-dif)<=Min) Min=abs((m-i)*s2-dif),p2=i;
		cout<<p2;
	}
	else
	{
		int Min=544544544,p,dif=l-r;
		for(int i=n;i>=m;i--) if(abs((i-m)*s2-dif)<=Min) Min=abs((i-m)*s2-dif),p2=i;
		cout<<p2;
	}
	return 0; 
}
2023/10/4 23:46
加载中...