@[T_Tlucas_Yin](/user/835809) 你咋也没启 A
by 1234567890sjx @ 2024-05-04 20:02:28
```
#include<bits/stdc++.h>
using namespace std;
const int N = 100100;
typedef long long ll;
ll a[N];
ll b[N];
ll su;
ll n,p,q,r;
int main(){
scanf("%lld%lld%lld%lld",&n,&p,&q,&r);
for(int i=1;i<=n;i++)
scanf("%lld",&a[i]),b[i]=a[i],su+=a[i];
sort(b+1,b+n+1);
if(su>=0){
printf("0");
return 0;
}//本身是美妙的
ll g=0-su;
ll h1=g*p;
ll h2=0;
ll sum=su;
for(int i=1;i<n;i++){
if(sum<0 && b[i]<0) h2+=min(min(-b[i],-sum)*p,q),sum+=-b[i];
if(sum>=0) break;
}
if(sum<0) h2+=(0-sum)*p;
printf("%lld",h2);
return 0;
}
``` @[T_TLucas_Yin](/user/835809)
by bw000001 @ 2024-05-04 20:27:57
@[T_TLucas_Yin](/user/835809) 你可以试试开 __int128
by lao_wang @ 2024-05-06 14:25:23