
动态规划
多一些不为什么的坚持
qq:1216161552
展开
-
1775:采药 01背包
题目链接很简单的一个01背包问题#include #include #include #include #include #include #include #include#includeusing namespace std;int main(){ int n,m; cin>>n>>m; int value[10000],weight[10原创 2017-08-15 22:10:57 · 376 阅读 · 0 评论 -
洛谷 P1616 疯狂的采药
题目背景此题为NOIP2005普及组第三题的疯狂版。此题为纪念LiYuxiang而生。题目描述LiYuxiang是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同种类的草药,采每一种都需要一些时间,每一种也有它自身的价值。我会给你一段时间,在这段时...原创 2018-04-24 23:00:01 · 244 阅读 · 0 评论 -
洛谷 P1049 装箱问题
题目描述有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30,每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入输出格式输入格式:一个整数,表示箱子容量一个整数,表示有n个物品接下来n行,分别表示这n 个物品的各自体积输出格式:一个整数,表示箱子剩余空间。输入输出样例输入样例#1: 复制2468312797...原创 2018-04-24 22:58:20 · 379 阅读 · 1 评论 -
洛谷 P1048 采药
题目描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是辰辰,你...原创 2018-04-24 22:54:14 · 191 阅读 · 0 评论 -
洛谷 P1064 金明的预算方案
题目描述金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子:主件 附件电脑 打印机,扫描仪书柜 图书书桌 台灯,文具工作椅 无如果要买归类为附件...原创 2018-04-24 22:49:07 · 230 阅读 · 0 评论 -
洛谷 P1164 小A点菜
题目背景uim神犇拿到了uoi的ra(镭牌)后,立刻拉着基友小A到了一家……餐馆,很低端的那种。uim指着墙上的价目表(太低级了没有菜单),说:“随便点”。题目描述不过uim由于买了一些辅(e)辅(ro)书,口袋里只剩M元(M<=10000)。餐馆虽低端,但是菜品种类不少,有N种(N<=100),第i种卖ai元(ai<=1000)。由于是很低端的餐馆,所以每种菜只有一份。小A奉行...原创 2018-04-24 22:47:15 · 194 阅读 · 0 评论 -
洛谷 P1060 开心的金明
题目描述金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N元。于是,他把每件物品规定了一个重要度,分为5等:用整数1~5表示,第5等最重要。他还从因特网上查到了每件物品的价格(都是整数元)。他...原创 2018-04-24 22:44:36 · 614 阅读 · 0 评论 -
51Nod 1102 面积最大的矩形 (左右最大上升区间)
寻找一个点左右能上升的最大区间参照博客注意:long long#include #include #include #include #include #include #include#includeusing namespace std;int main(){ int n; scanf("%d",&n); long long a[50000+原创 2018-01-02 20:22:57 · 243 阅读 · 0 评论 -
51Nod 1002 数塔取数问题
#include#includeusing namespace std;int main(){ int n; scanf("%d",&n); int a[501][501]; for(int i=0;i<n;i++){ for(int j=0;j<=i;j++) scanf("%d",&a[i][j]); } for(int i=n-1;i>=1;i--){ for(in原创 2017-11-06 15:14:00 · 226 阅读 · 0 评论 -
51Nod 1007 正整数分组 0-1背包
求n个数能组合成最接近总和的一半然后0-1背包。判断最接近一半值的数#include #include #include #include #include#include using namespace std; int main(){ int n; cin>>n; int a[101]; int sum=0; for(int i=0;i<n;i++){原创 2017-11-28 19:33:55 · 202 阅读 · 0 评论 -
51Nod 1083 矩阵取数问题
题目链接#include #include #include #include #include #include #include #include using namespace std; int main(){ int n; cin>>n; int a[501][501];原创 2017-10-24 15:43:16 · 238 阅读 · 0 评论 -
51Nod 1134 最长递增子序列(二分/lower_bound)
题目链接之前写过一个LIS问题传送门#include#include#include#include#include#include#includeusing namespace std;int main(){ int n; int a[50001]; cin>>n; for(int i=0;i<n;i++){ cin>>a[i]; } int原创 2017-09-06 17:50:57 · 366 阅读 · 0 评论 -
最长上升子序列 (n^2&&nlogn)
题目链接用f[]数组存储每个下表对应的最长上升序列的长度一个数比它前面某个位置的数大当前f[i]=max(f[i],f[j]+1);#include #include #include #include #include #include #include #include#includeusing namespace std;int原创 2017-08-15 22:23:12 · 497 阅读 · 0 评论 -
洛谷 P1091 合唱队形
题目描述N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1,2…,K,他们的身高分别为T1,T2,…,TK, 则他们的身高满足T1<...<Ti>Ti+1>…>TK(1<=i<=K)。你的任务是,已知所有N位同学的身高,计算最少需要几位同学出列,可以使得剩下的...原创 2018-04-24 23:03:39 · 184 阅读 · 0 评论