しろは的军训列队
Posted leiyuanze
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了しろは的军训列队相关的知识,希望对你有一定的参考价值。
代码
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long LL;
const int N = 1e6;
int n , a[N + 5] , b[N + 5];
struct node{
int a , b;
}c[N + 5];
LL val , ans , k1 , k2;
inline bool cmp(node x , node y) { return x.a < y.a; }
int main()
{
scanf("%d" , &n);
for(register int i = 1; i <= n; i++) scanf("%d" , &c[i].a);
for(register int i = 1; i <= n; i++) scanf("%d" , &c[i].b);
sort(c + 1 , c + n + 1 , cmp);
for(register int i = 2; i <= n; i++) val += 1LL * (c[i].a - c[1].a) * c[i].b , k1 += 1LL * c[i].b;
k2 = c[1].b , ans = val;
for(register int i = 2; i <= n; i++)
{
val -= 1LL * k1 * (c[i].a - c[i - 1].a);
val += 1LL * k2 * (c[i].a - c[i - 1].a);
k1 -= c[i].b , k2 += c[i].b;
ans = min(ans , val);
}
printf("%lld" , ans);
}
以上是关于しろは的军训列队的主要内容,如果未能解决你的问题,请参考以下文章