cf276-c

#include<bits/stdc++.h>
using namespace std;
const int N=200000+5;
int a[N],b[N];
int main()
{
    int n,q;
    cin>>n>>q;
    for(int i=0;i<n;i++)
        cin>>a[i];
    sort(a,a+n);
    memset(b,0,sizeof(b));
    long long ans=0;
    int l,r;
    while(q--){
        cin>>l>>r;
        b[l-1]++;
        if(r<=n) b[r]--;
    }
    for(int i=1;i<n;i++)
        b[i]+=b[i-1];
    sort(b,b+n);
    for(int i=0;i<n;i++)
        ans+=(long long )a[i]*b[i];
    cout<<ans<<endl;
}

猜你喜欢

转载自www.cnblogs.com/033000-/p/10300251.html