poj 1456 贪心

来源:互联网 发布:ug星空自动编程教程 编辑:程序博客网 时间:2024/05/16 04:06
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int pre[10100];struct node{int v,l;}p[10100];bool cmp(struct node a,struct node b){return a.v>b.v;}int find(int x){if(pre[x]==x)return x;elsereturn find(pre[x]);}int main(){int n;while(~scanf("%d",&n)){for(int i=0;i<n;i++)scanf("%d%d",&p[i].v,&p[i].l);for(int i=0;i<10010;i++)pre[i]=i;sort(p,p+n,cmp);int res=0;for(int i=0;i<n;i++){int tem=find(p[i].l);if(tem>0){pre[tem]=tem-1;res+=p[i].v;}}printf("%d\n",res);}return 0;}

0 0
原创粉丝点击