题目

一个正整数 n 可以表示成若干个正整数之和,形如:n=n1+n2+…+nk,其中 n1≥n2≥…≥nk,k≥1。

我们将这样的一种表示称为正整数 n 的一种划分。

现在给定一个正整数 n,请你求出 n 共有多少种不同的划分方法。

输入格式

共一行,包含一个整数 n。

输出格式

共一行,包含一个整数,表示总划分数量。

由于答案可能很大,输出结果请对 109+7 取模。

数据范围

1≤n≤1000

输入样例:

5

输出样例:

7

解法1

代码

#include<iostream>using namespace std;const int N = 1010, mod = 1e9 + 7;
int f[N];int main()
{int n;cin >> n;f[0] = 1; for(int i = 1; i <= n; i ++)//i 相当于物品 for(int j = i; j <= n; j ++)// j 相当于背包 f[j] = (f[j] + f[j - i]) % mod;cout << f[n];return 0;
}

解法2

代码

#include<iostream>using namespace std;const int N = 1010, mod = 1e9 + 7;
int f[N][N];int main()
{int n;cin >> n;//将i重量的物品分到j个物品中 f[0][0] = 1;for(int i = 1; i <= n; i ++)for(int j = 1; j <= i; j ++)f[i][j] = (f[i - 1][j - 1] + f[i - j][j]) % mod;int res = 0;   for(int i = 1; i <= n; i ++) res = (res + f[n][i]) % mod;cout << res;return 0;
}

整数划分(计数类DP)相关推荐

  1. Acwing900. 整数划分[计数类dp]:完全背包解法

    文章目录 题目分析 完全背包解法 题目链接 题目分析 完全背包解法 请复习完全背包模板完全背包dp优化内有完整标准完全背包的推导过程 状态表示: f[i][j]f[i] [j]f[i][j] 表示从 ...

  2. 数数题(计数类 DP)做题记录

    数数题(计数类 DP)做题记录 CF1657E Star MST 我们称张无向完全图是美丽的当且仅当:所有和 \(1\) 相连的边的边权之和等于这张完全图的最小生成树的边权之和. 完全图点数为 \(n ...

  3. CF559C-Gerald and Giant Chess【计数类dp】

    正题 上不了Codeforces,就用洛谷了 评测记录:https://www.luogu.org/recordnew/lists?uid=52918&pid=CF559C 题目大意 H∗WH ...

  4. POJ - 1737 Connected Graph,Java(计数类DP)

    POJ - 1737 Connected Graph C++高精太难写了,直接用Java的大整数会方便一点 常规方法 import java.io.*; import java.math.BigInt ...

  5. HDU--4248、A Famous Stone Collector (计数类dp)

    题目链接 题面: 题意: 有 nnn 种颜色的石子,第 iii 种颜色的石子有 aia_iai​ 个. 我现在要从里面选出若干个石子排成一排,问有多少种不同的序列. 两个序列不同当且仅当长度不同或者至 ...

  6. hdu 5230(整数划分,dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5230 解题思路: 这是一个整数划分的模型: 将n划分为k个整数的划分数 设dp[i][j]为将i划分为 ...

  7. 51nod 1201:整数划分 超级好的DP题目

    1201 整数划分 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题  收藏  关注 将N分为若干个不同整数的和,有多少种不同的划分方式,例如:n = 6,{6} { ...

  8. NYOJ90 整数划分(经典递归和dp)

    整数划分 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 将正整数n表示成一系列正整数之和:n=n1+n2+-+nk,  其中n1≥n2≥-≥nk≥1,k≥1.  正整数 ...

  9. 大概是:整数划分||DP||母函数||递推

    整数划分问题 整数划分是一个经典的问题. Input 每组输入是两个整数n和k.(1 <= n <= 50, 1 <= k <= n) Output 对于每组输入,请输出六行. ...

最新文章

  1. 在Vmware中安装Hyper-V
  2. 线上CPU100%?看看这篇是怎么排查的。
  3. wireshark协议解析器原理与插件编写
  4. QLibrary Class Reference(qt加载外部库)
  5. ubuntu 下安装java6的源
  6. Android开源项目--分类汇总
  7. python打印日历代码_带tkinter的日历(打印所选日期)
  8. 【DFS + 记忆化递归 + DP】LeetCode 91. Decode Ways
  9. 毫米波雷达信号处理系统
  10. win10的计算机 桌面图标不见了怎么办,教你win10桌面我的电脑图标不见了怎么办...
  11. pandas对索引列index重新整理顺序
  12. Unity实现3D模式下的摄像机视角控制
  13. 各种浏览器兼容性报告大全
  14. 知识科普:5G是什么
  15. 基于深度学习的图标型验证码识别系统(包含完整代码、界面)
  16. Mysql 内置函数大全
  17. 刘磨叽恶狠狠地瞪了了张s
  18. 二分查找发(对半查找法)
  19. python 3标准库道格_《PYTHON 3标准库 [美] 道格·赫尔曼》[美] 道格·赫尔曼(Doug Hellmann)著【摘要 书评 在线阅读】-苏宁易购图书...
  20. A股市场机器学习多因子模型实证

热门文章

  1. 上传多张图片的html表单,element在form表单里上传多张张图片
  2. multisim数字逻辑课程设计
  3. [贝聊科技]谈谈 iOS 如何动态切换 APP 的主题
  4. 苹果手机app mitmdump无法抓包
  5. linux 安装svn服务端
  6. 三囊饮是什么,真的能治疗囊肿吗?
  7. Linux下Desktop文件入门,解析Deepin Linux系统中的Desktop文件,附实例讲解
  8. 传奇服务器验证失败怎么回事,绝地求生从外部提供商处验证失败原因及解决方法推荐...
  9. 2014年10月26完美世界校招java中的两道java题
  10. 面试时唬人的3个Excel技巧,最后一个能把主考官目瞪口呆