3 条题解
-
1
#include<bits/stdc++.h> using namespace std; struct node { int p,d; }a[10005]; int cmp(node a,node b){ return a.p>b.p ; } int main(){ int n; while(cin>>n){ int maxn=0; for(int i=1;i<=n;i++){ cin>>a[i].p >>a[i].d ; if (a[i].d>maxn) maxn=a[i].d ; } sort(a+1,a+n+1,cmp); int flag[10005]={}; int ans=0; for(int i=1;i<=n;i++){ for(int j=a[i].d;j>=1;j--){ if(!flag[j]){ flag[j]=1; ans+=a[i].p; break; } } } cout<<ans<<endl; } return 0; } //抄牢尸的
信息
- ID
- 56
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 119
- 已通过
- 85
- 上传者