挂了,希望有dl救救
查看原帖
挂了,希望有dl救救
233779
Dune_楼主2021/5/6 19:34
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
long long int n,m;
long long int p1,s1;
long long int s2;
long long int lower = 0,lower2 = 0,loc,cha;
long long int minn = 0x7f7f7f;
long long int num[100010];
long long int make(long long int x,long long int y)
{
	if(x >= y)
		return x-y;
	return y-x;
}
int main()
{
	scanf("%lld",&n);
	for(int i = 1;i <= n; ++i)
	{
		scanf("%lld",&num[i]);
	}
	scanf("%lld%lld%lld%lld",&m,&p1,&s1,&s2);
	num[p1] += s1;
	for(int i = 1;i < m; ++i)
	{
		lower += num[i] * (m-i);
	}
	for(int i = m+1;i <= n; ++i)
	{
		lower2 += num[i] * (i-m);
	}
	for(int i = 1;i <= n; ++i)
	{
		if(i < m)
			lower += s2*(m-i);
		if(i > m)
			lower2 += s2*(i-m);
		cha = make(lower,lower2);
		if(cha < minn)
		{
			minn = cha;
			loc = i;
		}
	}
	printf("%lld",loc);
	return 0;
}
2021/5/6 19:34
加载中...