76分求调!!!(急)
查看原帖
76分求调!!!(急)
1408395
_lxc__楼主2024/10/2 16:23

CODE:

#include<bits/stdc++.h>
using namespace std;
long long n,c[100010],m,p1,s1,s2,p2;
long long sum1=0,sum2=0;
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;i++){
		sum1+=c[i]*(m-i);
	}
	for(int i=m+1;i<=n;i++){
		sum2+=c[i]*(i-m);
	}
	long long minn=1e18;
	for(int i=1;i<=n;i++){
		if(i<=m){
			if(abs(sum1+(m-i)*s2-sum2)<minn){
				minn=abs(sum1+(m-i)*s2-sum2);
				p2=i;
			}
		}else{
			if(abs(sum2+(i-m)*s2-sum1)<minn){
				minn=abs(sum2+(i-m)*s2-sum1)<minn;
				p2=i;
			}
		}
	}
	cout<<p2;
	return 0;
}

是WA,不是TLE

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