E

复制代码
 1 #include<cstdio>
 2 #include<cstring>
 3 #include<algorithm>
 4 #include<vector>
 5 using namespace std;
 6 const int N=110,M=1e4+10,K=15;
 7 int f[N][M],n,m,k;
 8 struct node
 9 {
10     int cost,val;
11     node(){}
12     node(int a,int b):cost(a),val(b){}
13 };
14 vector<node>a[K];
15 
16 int main()
17 {
18     freopen("1.in","r",stdin);
19     freopen("1.out","w",stdout);
20     while (~scanf("%d%d%d",&n,&m,&k)) {
21         for (int i=1;i<=k;i++) a[i].clear();
22         for (int i=0;i<n;i++) {
23             int id,b,c;
24             scanf("%d%d%d",&id,&b,&c);
25             a[id].push_back(node(b,c));
26         }
27         memset(f,-1,sizeof(f));
28         f[0][0]=0;
29         for (int i=1;i<=k;i++) {
30             for (int j=0;j<a[i].size();j++) {
31                 int c=a[i][j].cost,v=a[i][j].val;
32                 for (int w=m;w>=c;w--) {
33                     if (f[i][w-c]>-1) {
34                         f[i][w]=max(f[i][w],f[i][w-c]+v);
35                     }
36                     if (f[i-1][w-c]>-1) {
37                         f[i][w]=max(f[i][w],f[i-1][w-c]+v);
38                     }
39                 }
40             }
41         }
42         int t=-1;
43         for (int i=0;i<=m;i++) t=max(t,f[k][i]);
44         if (t>-1) printf("%d\n",t);
45         else printf("Kid is sad.\n");
46     }
47     return 0;
48 }
View Code
复制代码
posted @   acvc  阅读(162)  评论(0编辑  收藏  举报
编辑推荐:
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
阅读排行:
· 从零开始开发一个 MCP Server!
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
历史上的今天:
2014-04-12 poj 3258
点击右上角即可分享
微信分享提示