水题........

#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
int s[2000][2],dp[150],t[150][3];
int main()
{
int text;
scanf("%d",&text);
while(text--)
{
int n,m;
scanf("%d %d",&n,&m);
for(int i=1;i<=m;i++)
scanf("%d %d %d",&t[i][0],&t[i][1],&t[i][2]);
int cnt=0;
for(int i=1;i<=m;i++)
{
int k=1;
while(t[i][2]-k>0)
{
s[cnt][0]=k*t[i][0];
s[cnt++][1]=k*t[i][1];
t[i][2]-=k;
k*=2;
}
s[cnt][0]=t[i][2]*t[i][0];
s[cnt++][1]=t[i][2]*t[i][1];
}
memset(dp,0,sizeof(dp));
for(int i=0;i<cnt;i++)
{
for(int j=n;j>=s[i][0];j--)
if(dp[j]<dp[j-s[i][0]]+s[i][1])
dp[j]=dp[j-s[i][0]]+s[i][1];
}
printf("%d\n",dp[n]);
}
return 0;
}

dp之多重背包2191的更多相关文章

  1. 单调队列优化DP,多重背包

    单调队列优化DP:http://www.cnblogs.com/ka200812/archive/2012/07/11/2585950.html 单调队列优化多重背包:http://blog.csdn ...

  2. dp之多重背包poj2392

    题意:有k种石头,高为hi,在不超过ai的高度下,这种石头可以放置,有ci种这个石头,求这些石头所能放置的最高高度......... 思路:以往的什么硬币种数,最大硬币数之类的,他们的硬币都已经是排好 ...

  3. dp之多重背包hdu1059

    题意:价值为1,2,3,4,5,6. 分别有n[1],n[2],n[3],n[4],n[5],n[6]个.求能否找到满足价值刚好是所有的一半的方案. 思路:简单的多重背包,我建议多重背包都用二进制拆分 ...

  4. nyoj 546——Divideing Jewels——————【dp、多重背包板子题】

    Divideing Jewels 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 Mary and Rose own a collection of jewells. ...

  5. dp之多重背包(二进制优化)

    void solve(int v,int w,int c){    int count=0;    for(int k=1;k<=c;k<<=1)    {        val[c ...

  6. 硬币问题 (dp,多重背包的二分优化)

    题目描述 给你n种硬币,知道每种的面值Ai和每种的数量Ci.问能凑出多少种不大于m的面值. 输入 有多组数据,每一组第一行有两个整数 n(1≤n≤100)和m(m≤100000),第二行有2n个整数, ...

  7. hdu1059&poj1014 Dividing (dp,多重背包的二分优化)

    Problem Description Marsha and Bill own a collection of marbles. They want to split the collection a ...

  8. [DP之多重背包优化方法]

    首先我们看一道有趣的题目 然后这道题很快想到是一个多重背包和无限背包混合体 那么我们就以这道题 来讨论一下多重背包的优化 首先我们看看朴素打法 memset(F,,]=; ;i<=N;i++) ...

  9. poj 1742 Coins(dp之多重背包+多次优化)

    Description People in Silverland use coins.They have coins of value A1,A2,A3...An Silverland dollar. ...

随机推荐

  1. Power Desginer系列01【转摘】

    近期在做一个业务系统的分析和数据模型设计,工作这几年也做过好几个项目的数据库模型的设计,期间也算是积累了一定的经验吧,这次有机会就写写我的数据库模型设计过程与方法. 在 数据库设计中,设计的目标就是要 ...

  2. Javascript前端思维导图

    思维导图小tips: 思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出 ...

  3. java中构建同时兼容linux和windows程序时遇到的文件路径分割符问题解决方案

    最近在做一个自动上传文件的客户端,因为 file.getAbsolutePath()  在Mac和linux下的分割符是“/”,而在windows操作系统下的分割符则是“\”,我们程序中固然可以通过调 ...

  4. XML❤你并不孤单

    XML不是已不成立的,它是慢慢发展起来的.由最初的GML发展到SGML再到HTML,最后有了是1998年发展起来的可扩展标记语言. 然而XML并非替换HTML的技术,两者的存在都十分重要. XML是一 ...

  5. WCF 之 已知类型(KnownType)

    已知类型(Known types)允许在服务契约中使用多态的行为,在服务操作中暴露基本类型.将已知类型(known types)相关到基本类型(基类类型)自身;特定操作;整个服务契约采用属性声明或者配 ...

  6. myeclipse报异常:java.lang.OutOfMemoryError: Java heap space

  7. itext处理pdf

    http://www.java2s.com/Tutorial/Java/0419__PDF/DecryptPdffile.htm

  8. 虚拟互换(virtual swap)

    虚拟互换(virtual swap) 经济学中的互换(Swap)指的是这么一个东西:有2个交易方A.B须要进行跨国交易.各自都须要另外一个国家的某个商品.他们本来能够通过标准的汇率到各自国家的银行办理 ...

  9. GNOME下也是Alt+F2,输入gnome-terminal

    如果桌面有terminal 的话 ,直接用上下键就可以了   Alt + F1 类似Windows下的Win键,在GNOME中打开”应用程序”菜单(Applications) Alt + F2 类似W ...

  10. 转:Mosquitto用户认证配置

    转自:https://blog.csdn.net/u012377333/article/details/69397124?utm_source=blogxgwz1 前言:基于Mosquitto服务器已 ...