1 条题解
-
1
#include<iostream> #include<algorithm> #include<cstdio> #include<cmath> using namespace std; int n,m,p1; long long s1,s2; long long arr[100003]; int main(){ cin>>n; for(int i=1;i<=n;i++){ scanf("%lld",&arr[i]); } scanf("%d",&m); scanf("%d",&p1); scanf("%lld",&s1); scanf("%lld",&s2); arr[p1]+=s1; long long a=0,b=0; for(int i=1;i<m;i++){ a+=arr[i]*(m-i); } for(int i=m+1;i<=n;i++){ b+=arr[i]*(i-m); } long long res=0,res1=1e9+1,c=0; for(int i=1;i<=n;i++){ if(i<m){ a = a+s2*(m-i); }else if(i>m){ b = b+s2*(i-m); } if(a<b){ c = b-a; }else if(a>b){ c = a-b; }else if(a==b){ cout << m; return 0; } if(res1>c){ res1 = c; res = i; } if(i<m){ a = a-s2*(m-i); }else if(i>m){ b = b-s2*(i-m); } } cout << res; return 0; }
- 1
信息
- ID
- 3944
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 2
- 标签
- 递交数
- 16
- 已通过
- 10
- 上传者