90pts 求助
查看原帖
90pts 求助
652816
saixingzhe楼主2022/12/24 12:20

记录

#include<bits/stdc++.h>
using namespace std;
long long L,N,ans,j=1,sum;
struct Node{
	long long id,people;
}a[100001];
bool cmp(Node x,Node y){
	return x.id<y.id;
}
int main(){
	scanf("%d%d",&L,&N);
	for(int i=1;i<=N;i++)	scanf("%d%d",&a[i].id,&a[i].people),ans+=a[i].people;
	sort(a+1,a+N+1,cmp);
	long long mid=ans/2;
	while(mid>0){
		mid-=a[j].people;
		j++;
	}
	j--;
	for(int i=1;i<=N;i++)	sum+=abs(a[i].id-a[j].id)*a[i].people;
	printf("%lld",sum);
    return 0;
}
2022/12/24 12:20
加载中...