p1164 小A点菜 题解——背包初步
除去花里胡哨的表层题干,其实可以简化为:
若有m个东西,每取一个要K个代价,问若要求取出数据的代价为n的方案数是多少
其实是01背包的一种变式(反正我就是这么认为的,不对又怎样,打我啊)。
我认为还是挺好想的(但身为冻柜蒟蒻的我,还素选择写下这份题解OTZ)
假若说f[j]是你选前i种东西而用j个价格的方案数
以一个for循环控制i,以第二个for循环控制填满j
具体内容详见代码及注释
#include<iostream>
#include<cstdio>
using namespace std;
];
];
int main(){
int n;int m;
scanf("%d%d",&n,&m);//n->几种菜。m->要花的钱
f[]=;
;i<=n;i++) scanf("%d",&v[i]);//每种菜要花的价格
;i<=n;i++){
for(register int j=m;j>=v[i];j--){
f[j]=f[j]+f[j-v[i]];
/*
{f[j]是代表前i个种类的食品用了之后花完j元的方案数
Dp方程代表着我点第I个菜(f[j-v[i]])和不点第I个菜(f[j])一共的方案数
当只花费0元在第I个菜时,只有一种买菜方案
当花完M元时,输出方案数
}
——————————————————————————
{循环
1>>代表的是前I种食物
2>>代表的是用J元
整体就是前I种食物花费J元的方案数
}
——————————————————————————
*/
}
}
cout<<f[m];
;//功德圆满
}
有什么错误劳烦指出,Thanks♪(・ω・)ノ
p1164 小A点菜 题解——背包初步的更多相关文章
- 洛谷P1164 小A点菜(01背包求方案数)
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过u ...
- 洛谷P1164 小A点菜 [2017年4月计划 动态规划08]
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过u ...
- P1164 小A点菜【dp】
P1164 小A点菜 提交 43.03k 通过 24.37k 时间限制 1.00s 内存限制 125.00MB 题目提供者洛谷 难度普及- 历史分数100 提交记录 查看题解 标签 洛谷原创 查看 ...
- 洛谷——P1164 小A点菜
P1164 小A点菜 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过u ...
- 洛谷P1164小A点菜(01背包)
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:“随便点”. 题目描述 不过uim由于买了一些辅(e ...
- 洛谷P1164 小A点菜 && caioj 1410 动态规划1:点菜(背包方案问题)
方程很简单 f[0] = 1 f[j] += f[j-w[i]] #include<cstdio> #define REP(i, a, b) for(int i = (a); i < ...
- 洛谷 p1164 小A点菜 【dp(好题)】 || 【DFS】 【恰好完全装满】
题目链接:https://www.luogu.org/problemnew/show/P1164 题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种. u ...
- P1164 小A点菜(动态规划背包问题)
题目背景 uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家--餐馆,很低端的那种. uim指着墙上的价目表(太低级了没有菜单),说:"随便点". 题目描述 不过ui ...
- P1164 小A点菜
原题链接 https://www.luogu.org/problemnew/show/P1164 此题是一道简单的动规问题 才学两天不是很熟练,我苦思冥想看着题解终于想出来了. 主要的思路如下: 我们 ...
随机推荐
- windows server2012部署apache项目访问后台管理系统时tomcat就停了是怎么回事
是由于环境变量没有配好的原因,找不到jre目录 tomcat的运行需要JRE,一般启动闪退都是因为找不到JRE,也就是说环境安装JDK时环境变量没有配置好. 我们首先打开”命令提示符“窗口,输入jav ...
- docker 构建 spring boot项目
在docker 开始部署springBoot项目 1.在centos7 ~ 创建一个文件夹docker 里面放置 上面的Dockerfile 和 springBoot 打包的项目docker_spri ...
- mysql 截取字符串
#select SUBSTRING_INDEX('1,2', ',', 1); SELECT * FROM dis_disease WHERE id = ( SELECT SUBSTRING_INDE ...
- POJ1087 A Plug for UNIX 2017-02-12 13:38 40人阅读 评论(0) 收藏
A Plug for UNIX Description You are in charge of setting up the press room for the inaugural meeting ...
- postman的使用方法详解!最全面的教程
文章来源:http://www.cnplugins.com/tool/specify-postman-methods.html 一 简介 Postman 是一款功能超级强大的用于发送 HT ...
- in操作符
// Arrays,数组:下标 in array,length也可以 var trees = new Array("redwood", "bay", " ...
- Sqler-Monitor
针对Sqler Monitor 功能做了整理 ##SqlServices ## Cluster. Alwayson Single ##Replicaion ##: 1:undelivedcmds mo ...
- 支付宝PC网站接口对接
PC网站支付接口,请参考支付宝官方文档:https://b.alipay.com/signing/productSet.htm?navKey=all 1.需要提供签约账号.商户密钥 2.代码实现: 支 ...
- Linux 批量管理工具
pssh/pscp(Python) ansible(Python) saltstack(Python) chef puppet(Ruby) fabric(Python)
- C博客作业06—结构体&指针
1.本章学习总结 1.1思维导图 1.2本章学习体会 明白了结构体的定义及使用方法 学会了fopen,fclose,feof等文件操作函数,学会使用c语言进行文件操作 大作业中的部分函数出现未知错误且 ...