1 条题解
-
0
自动搬运
来自洛谷,原作者为

ShineEternal
**搬运于
2025-08-24 21:33:56,当前版本为作者最后更新于2018-07-22 11:05:42,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
看到楼下的几位后笑了。。。
既然是贪心,那多半需要排序,答案要的是脂肪,所以按脂肪从大到小排序。
#include<cstdio> #include<algorithm> using namespace std; int b[10001]; struct ben { int y,z; }a[10001]; int cmp(const ben &a,const ben &b) { return a.y>b.y; }//脂肪从大到小 int main() { int n,m,k; scanf("%d%d%d",&n,&m,&k); for(int i=1;i<=k;i++) { scanf("%d",&b[i]); } for(int i=1;i<=n;i++) { scanf("%d%d",&a[i].y,&a[i].z); } sort(a+1,a+n+1,cmp); int ans=0;//答案别忘赋初值 for(int i=1;i<=n;i++) { if(b[a[i].z]>0&&m>0)//还没超过这一类和总共规定 { b[a[i].z]--; m--; ans+=a[i].y;//加上脂肪 } } printf("%d",ans); return 0; }求过
- 1
信息
- ID
- 1073
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者