动态规划的话,我们中心思想就是,设一个num数组,num[ i ][ j ] 代表从i的大小中,取出 j 种物品的方法数。

当不取j种物品的时候,我们就让num[ i ][ j ] =num[ i ][ j -1 ],并且此时,如果,i-a[j]>=0 的话,说明背包还放得下,所以

我们就让num[ i ][ j ] 加上num[ i-a[ j ] ][ j-1 ] ,就可以了。

#include <iostream>
#include <cstring>
using namespace std;
int main()
{
int n;
cin>>n;
int a[30],num[100][100];
memset(num,0,sizeof(num));
for (int i=1;i<=n;i++) {
cin>>a[i];
num[0][i]=1;//边界条件
}
num[0][0]=1;//边界条件
for (int w=1;w<=40;w++) {
for (int k=1;k<=n;k++) {
num[w][k]=num[w][k-1];
if (w-a[k]>=0)
num[w][k]+=num[w-a[k]][k-1];
}
}
cout<<num[40][n]<<endl;
return 0;
}

OpenJudge-百练-2755-动规的更多相关文章

  1. 百练2755 奇妙的口袋 【深搜】or【动规】or【普通递归】or【递推】

    总Time Limit:  10000ms  Memory Limit:  65536kB 有一个奇妙的口袋.总的容积是40,用这个口袋能够变出一些物品,这些物品的整体积必须是40.John如今有n个 ...

  2. Poj OpenJudge 百练 1062 昂贵的聘礼

    1.Link: http://poj.org/problem?id=1062 http://bailian.openjudge.cn/practice/1062/ 2.Content: 昂贵的聘礼 T ...

  3. Poj OpenJudge 百练 1860 Currency Exchang

    1.Link: http://poj.org/problem?id=1860 http://bailian.openjudge.cn/practice/1860 2.Content: Currency ...

  4. Poj OpenJudge 百练 2602 Superlong sums

    1.Link: http://poj.org/problem?id=2602 http://bailian.openjudge.cn/practice/2602/ 2.Content: Superlo ...

  5. Poj OpenJudge 百练 2389 Bull Math

    1.Link: http://poj.org/problem?id=2389 http://bailian.openjudge.cn/practice/2389/ 2.Content: Bull Ma ...

  6. Poj OpenJudge 百练 1573 Robot Motion

    1.Link: http://poj.org/problem?id=1573 http://bailian.openjudge.cn/practice/1573/ 2.Content: Robot M ...

  7. Poj OpenJudge 百练 2632 Crashing Robots

    1.Link: http://poj.org/problem?id=2632 http://bailian.openjudge.cn/practice/2632/ 2.Content: Crashin ...

  8. Poj OpenJudge 百练 Bailian 1008 Maya Calendar

    1.Link: http://poj.org/problem?id=1008 http://bailian.openjudge.cn/practice/1008/ 2.content: Maya Ca ...

  9. Openjudge 百练第4109题

    在OpenJudge看到一个题目(#4109),题目描述如下: 小明和小红去参加party.会场中总共有n个人,这些人中有的是朋友关系,有的则相互不认识.朋友关系是相互的,即如果A是B的朋友,那么B也 ...

  10. [OpenJudge] 百练2754 八皇后

    八皇后 Description 会下国际象棋的人都很清楚:皇后可以在横.竖.斜线上不限步数地吃掉其他棋子.如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题. ...

随机推荐

  1. Thirft 客户端等待时间

    thrift框架使用C++ thrift shows CLOSE_WAIL error thrift中TNonblockingServer的简单用法

  2. hdoj5301

    题意: 有一个n*m的大矩阵, 其中有一个1*1的不要的位置(x,y), 然后用若干个小矩阵去覆盖大矩阵, 不要的不能被覆盖. 问小矩阵中面积最大的面积最小是多少. 思路: 巨巨先画一个矩形,看看那个 ...

  3. 收集一些Unity插件

    MCS Male 系列,人形角色插件,表情+体型 Mecanim Control Mecanim Control is a coding tool made that allow for a wide ...

  4. 洛谷 P4125 [WC2012]记忆中的水杉树【扫描线+set+线段树】

    我没有找到能在bzojAC的代码--当然我也WA了--但是我在洛谷过了,那就假装过了吧 minmax线段树一开始写的只能用min更新min,max更新max,实际上是可以互相更新的-- 首先看第二问, ...

  5. NOIP2017 赛后总结

    NOIP2017 确实,一场很深刻的考试结束了. 现在也已经搞了两周的学科了,在补之前两个月的学科的内容. 距离11.12已经过去12天了. 姓名 准考证号 math complexity park ...

  6. TensorFlow多线程输入数据处理框架(二)——输入文件队列

    参考书 <TensorFlow:实战Google深度学习框架>(第2版) 一个简单的程序来生成样例数据. #!/usr/bin/env python # -*- coding: UTF-8 ...

  7. iOS 在UITextView中查找某个Range所在的Rect

    代码如下(Swift 4): extension UITextView { /// 查找文本范围所在的矩形范围 /// /// - Parameter range: 文本范围 /// - Return ...

  8. Hadoop端口访问

    Hadoop集群默认端口 Hadoop本地开发,9000端口拒绝访问

  9. Hdu 3652 B-number (同余数位DP)

    题目链接: Hdu 3652 B-number 题目描述: 给出一个数n,问 [1, n]区间内有几个数能被13整除并且还有13这个子串? 解题思路: 能整除的数位DP,确定好状态随便搞搞就能过了.d ...

  10. h5-24-百度地图-地址解析

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...