社区讨论

80分求助

P5016[NOIP 2018 普及组] 龙虎斗参与者 3已保存回复 9

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
9 条
当前快照
1 份
快照标识符
@lodjf68e
此快照首次捕获于
2023/10/31 07:35
2 年前
此快照最后确认于
2023/11/06 22:50
2 年前
查看原帖
CPP
#include<cstdio>
long long abs(int a){return a>0?a:-a;}
long long n,m,p1,s1,s2,c[100001],l,h,l_1,h_1,minc=1000000009,p;
int main()
{
	scanf("%lld",&n);
	for(long long i=1;i<=n;i++)
		scanf("%lld",&c[i]);
	scanf("%lld%lld%lld%lld",&m,&p1,&s1,&s2);
	c[p1]+=s1;
	for(long long i=1;i<=n;i++)
	{
		if(i<m)
			l+=(m-i)*c[i];
		if(i>m)
			h+=(i-m)*c[i];
	}
	l_1=l;h_1=h;
	for(long long i=1;i<=n;i++)
	{
		if(i<m)
			l+=(m-i)*s2;
		if(i>m)
			h+=(i-m)*s2;
		if(abs(l-h)<minc)
		{
			p=i;
			minc=abs(l-h);
		}
		l=l_1;
		h=h_1;
	}
	printf("%lld",p);
}
求大佬帮帮忙

回复

9 条回复,欢迎继续交流。

正在加载回复...