51nod 1191 消灭兔子

来源:互联网 发布:淘宝数据分析包括哪些 编辑:程序博客网 时间:2024/05/17 03:06
#include <bits/stdc++.h>using namespace std;struct arrow{long long d,p;}arr[50050];bool cmp(arrow a1,arrow a2){return a1.d<a2.d;}long long b[50050];int main(){long long n,m,i,flag,cnt,ans;while(cin>>n>>m){for(i=0;i<n;i++)scanf("%lld\n",&b[i]);for(i=0;i<m;i++){scanf("%lld%lld",&arr[i].d,&arr[i].p);}sort(b,b+n);sort(arr,arr+m,cmp);flag=1;cnt=0;ans=0;priority_queue<long long> q;for(i=0;i<n;i++){for(;cnt<m&&arr[cnt].d<b[i];cnt++){if(!q.empty()){if(q.top()>arr[cnt].p){ans-=q.top();q.pop();q.push(arr[cnt].p);ans+=arr[cnt].p;}}}if(cnt>=m){flag=0;break;}ans+=arr[cnt].p;q.push(arr[cnt].p);cnt++;}for(;cnt<m;cnt++){if(!q.empty()){if(q.top()>arr[cnt].p){ans-=q.top();q.pop();q.push(arr[cnt].p);ans+=arr[cnt].p;}}}if(flag)printf("%lld",ans);elseprintf("No Solution\n");}}

0 0
原创粉丝点击