hdoj 1028 Ignatius and the Princess III

原创 2012年03月26日 18:21:13

类型:DP

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1028

思路:题目是求整数n的划分方案数。令状态

dp(p, n) = n的整数划分方案数其中规定最大的整数不大于p

有递推式:

dp(p, n) = (1) dp(n, n) n < p

                  (2) dp(p - 1, n) + dp(p, n - p) n >= p

枚举n的整数划分中最大整数是否是p

#include <iostream>
#include <string>
#include <queue>
#include <stack>
#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
using namespace std;

#define FOR(i,a,b) for(i = (a); i < (b); ++i)
#define FORE(i,a,b) for(i = (a); i <= (b); ++i)
#define FORD(i,a,b) for(i = (a); i > (b); --i)
#define FORDE(i,a,b) for(i = (a); i >= (b); --i)
#define CLR(a,b) memset(a,b,sizeof(a))
#define PB(x) push_back(x)

const int MAXN = 122;
const int MAXM = 0;
const int hash_size = 25000002;
const int INF = 0x7f7f7f7f;

int dp[MAXN][MAXN];

int main() {
    int i, j, n;
    while(cin>>n) {
        CLR(dp, 0);
        dp[0][0] = 1;
        FORE(i, 0, n)
            dp[1][i] = 1;
        FORE(i, 2, n)
            FORE(j, 0, n)
                if(j < i)
                    dp[i][j] = dp[i - 1][j];
                else
                    dp[i][j] = dp[i][j - i] + dp[i - 1][j];
        cout<<dp[n][n]<<endl;
    }
    return 0;
}



HDU--杭电--1026--Ignatius and the Princess I--广搜--直接暴力0MS,优先队列的一边站

别人都是广搜+优先队列,我没空临时学,所以就直接自己暴力了 Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others)  ...
  • hncu1206401liuhao
  • hncu1206401liuhao
  • 2013年08月03日 14:04
  • 1992

杭电 hdu 1026 Ignatius and the Princess I(BFS+优先队列+墨迹人的输出)

Ignatius and the Princess I Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (...
  • mengxiang000000
  • mengxiang000000
  • 2016年01月19日 12:23
  • 1083

Micrium 开放了µC/OS-III源代码

Micrium 开放了µC/OS-III源代码  发布时间:2011-8-19 9:27:29   发布方:Dave   点击数:1641 高品质嵌入式系统...
  • autumn20080101
  • autumn20080101
  • 2013年07月25日 15:29
  • 1460

HDOJ 1028 Ignatius and the Princess III

链接:http://acm.hdu.edu.cn/showproblem.php?pid=1028 题目: Ignatius and the Princess III Time Limi...
  • u010084308
  • u010084308
  • 2014年06月30日 16:02
  • 823

hdoj1028 Ignatius and the Princess III(整数分解)

Ignatius and the Princess III Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K...
  • destiny19960207
  • destiny19960207
  • 2016年02月26日 19:48
  • 280

hdu 1028/哈理工OJ2004 Ignatius and the Princess III【完全背包】【dp】

Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K...
  • mengxiang000000
  • mengxiang000000
  • 2016年01月25日 15:11
  • 317

hdu 1028 Ignatius and the Princess III 整数划分+dp 组合

#include #include #include #include #include #include using namespace std; int f[122]; void in...
  • a601025382s
  • a601025382s
  • 2013年08月24日 13:41
  • 735

HDU-1028-Ignatius and the Princess III

HDU-1028-Ignatius and the Princess III http://acm.hdu.edu.cn/showproblem.php?pid=1028 整数划分,无奈,超时 ...
  • Cambridgeacm
  • Cambridgeacm
  • 2012年08月09日 19:56
  • 700

hdu 1028 Ignatius and the Princess III 母函数/dp

代码: 母函数:#include #include #include #include #include #include #include #include using names...
  • a601025382s
  • a601025382s
  • 2014年07月23日 09:43
  • 800

hdu 1028 Ignatius and the Princess III (母函数)

母函数水题(入门)
  • qingshui23
  • qingshui23
  • 2015年12月09日 11:16
  • 539
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:hdoj 1028 Ignatius and the Princess III
举报原因:
原因补充:

(最多只允许输入30个字)