# include# include # include using namespace std;struct node{ int t; int v; int yy;};struct node a[100010],b[100010];bool cmp(node a1,node a2){ if(a1.t==a2.t)//先按时间从大到小 return a1.v>a2.v;//再按水平从大到小 return a1.t>a2.t;}int main(){ int n,m,i,j; int map[100010]; __int64 sum; while(~scanf("%d%d",&n,&m)) { for(i=0;i =b[i].t) map[a[xx++].v]++;//时间满足的标记 for(j=b[i].v;j<=100;j++)//从满足最小的价值開始搜 { if(map[j])//存在这个价值 { map[j]--; sum+=b[i].yy; cot++; break; } } } printf("%d %I64d\n",cot,sum); } return 0;}
版权声明:本文博主原创文章,博客,未经同意不得转载。