AOE还是单体
AOE还是单体?
https://ac.nowcoder.com/acm/contest/5600/A
思路
从小到达排序后,枚举选择AOE攻击的次数,前面的肯定直接都消灭掉了,算出来后面的剩余的减去AOE伤害
更新最小值即可
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[1<<18],b[1<<18];
ll n,x;
int main()
{
cin>>n>>x;
ll ans=1e18;
for(int i=1;i<=n;i++) cin>>a[i];
sort(a+1,a+1+n);
for(int i=1;i<=n;i++) b[i]=b[i-1]+a[i];
for(int i=0;i<=n;i++){
ans=min(ans,1ll*a[i]*x+b[n]-b[i]-(n-i)*a[i]);
}
cout<<ans;
return 0;
}
联想公司福利 1512人发布