首页 > 其他分享 >.计数类dp

.计数类dp

时间:2024-02-19 11:55:19浏览次数:19  
标签:main const int namespace 计数 1e9 include dp

整数划分

https://www.acwing.com/problem/content/description/902/

#include<iostream>
#include<algorithm>
using namespace std;
const int N=1010,mod=1e9+7;
int f[N];int n;
int main()
{
    cin>>n;
    f[0]=1;
    
    for(int i=1;i<=n;i++)
        for(int j=i;j<=n;j++)
            f[j]=(f[j]+f[j-i])%mod;
    
    cout<<f[n]<<endl;
    return 0;
}

第二种解法

#include<iostream>
#include<algorithm>
using namespace std;
const int N=1010,mod=1e9+7;
int f[N][N];int n;
int main()
{
    cin>>n;
    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<<endl;
    return 0;
}

 

标签:main,const,int,namespace,计数,1e9,include,dp
From: https://www.cnblogs.com/daimazhishen/p/18020778

相关文章

  • RevBits Email Security - Endpoint Agent分析(EDR+API集成)
    https://revbits.com/pdf/RevBits_Email_Security_Product_Brief_Securing_Email_Inboxes.pdf 邮件安全检测场景? 根据文档内容,RevBits邮件安全提供以下邮件安全检测场景:终端邮件安全代理软件直接部署在用户终端,可以在邮件进入用户收件箱时进行深度分析,检测和......
  • m基于码率兼容打孔LDPC码oms最小和译码算法的LDPC编译码matlab误码率仿真
    1.算法仿真效果matlab2022a仿真结果如下: 2.算法涉及理论知识概要       码率兼容打孔LDPC码BP译码算法是一种改进的LDPC译码算法,能够在不同码率下实现更好的译码性能。该算法通过在LDPC码中引入打孔操作,使得码率可以灵活地调整,同时利用BP(BeliefPropagation)译码算法......
  • 设置 Windows 打印首选项的基本分辨率为 1200 DPI 提高打印清晰度
    DPI是“DotsPerInch”的缩写,中文意思是“每英寸点数”。它是一个用于度量图像、打印机或显示器等设备分辨率的度量单位,表示在每英寸长度内可以打印或显示的点数。DPI值越高,表示打印机或显示器在单位面积内可以展示更多的细节,图像越清晰。通常来说,家庭使用的打印机DPI在1200之间,......
  • dp 未分类题目
    2484.CountPalindromicSubsequencesGivenastringofdigits s,return thenumberof palindromicsubsequences of s havinglength 5.Sincetheanswermaybeverylarge,returnit modulo 109+7.Note:Astringis palindromic ifitreadsthes......
  • 坐标dp
    就是f[i][j]i和j表示的是第i行第j列与别的没有区别1.传纸条往返两条路,实际上就是从起点分别走两条不相交的路,使其两条路上的总和最大正常的话就用四层循环分别表示两条路各自点的坐标f[x1][y1][x2][y2]=max(f[x1-1][y1][x2-1][y2],f[x1-1][y2][x2][y2-1],f[x1][y1-1][x2-1][y......
  • 动态规划(六)——树形dp
    树形dp,又称树状dp,即在树上进行的dp,在设计动态规划算法时,一般就以节点从深到浅(子树从小到大)的顺序作为dp的“阶段”,dp的状态表示中,第一维通常是节点编号(代表以该节点为根的子树)。大多数时候,我们采用递归的方式实现树形动态规划。对于每个节点x,先递归在他的每个子节点上进行dp,在回溯......
  • 回顾复习之坐标DP
    定义坐标型动态规划一般是给定网格、序列,求满足条件的MAX或MIN。开数组时,dp[i]一般代表以ai结尾的满足条件的子序列,dp[i][j]代表以i、j结尾的满足条件的最优解例题数塔典中典变形晴天小猪历险记之Hill抓苹果免费馅饼矩阵取数描述传送门思路首先看出,每行的问题是独立......
  • 动态规划(五)——坐标dp
    传纸条题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小......
  • DP总结
    DP总结DP(动态规划)简介动态规划是一种通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。由于动态规划并**不是某种具体的算法**,而是一种解决特定问题的方法,因此它会出现在各式各样的数据结构中,与之相关的题目种类也更为繁杂。DP基础1.必要前提 需要满足三个......
  • 基本计数原理
    加法原理解决一件事情,有k类方法,第i类方法有a[i]种选择。那么总方案数=a[1]+a[2]+....+a[k]乘法原理解决一件事情,有k个步骤,第i个步骤有a[i]种选择。那么总方案数=a[1]*a[2]....*a[k]排列组合排列:将n个元素选取k个出来构成一个排列,总方案数$A_{n}^{k}$=\(\frac{n!}{(n-k)......