zoukankan      html  css  js  c++  java
  • 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 ",t);
    45         else printf("Kid is sad. ");
    46     }
    47     return 0;
    48 }
    View Code
  • 相关阅读:
    Win10LTSC无法下载新版Microsoft Edge浏览器
    python识别视频黑屏或者低清晰度
    python提取视频第一帧图片
    盘点一下lua脚本和python的区别(基础)
    selenium控制已打开的页面
    frida- registernatives获取so层动态注册函数
    剑指 Offer 53
    剑指 Offer 52. 两个链表的第一个公共节点
    单链表中的环涉及到的6个相关问题
    剑指 Offer 51. 数组中的逆序对
  • 原文地址:https://www.cnblogs.com/acvc/p/4419852.html
Copyright © 2011-2022 走看看