zoukankan      html  css  js  c++  java
  • luogu P1025 数的划分

    https://www.luogu.org/problem/show?pid=1025

    n的k划分 且不出现划分成0的情况  可以

    分为两种情况

    所有划分的数 都大于1的情况

    至少划分的数里面有1的情况

    并且 这两个情况是互补的

    第一个情况可以 当作把所有的数 都减去1  然后就相当于 dp[n-k][k]  就是n-k的k划分

    然后另外一个就是  dp[n-1][k-1] 就是n-1 的 k-1划分

    #include<bits/stdc++.h>
    using namespace std;
    int dp[300][10];
    
    int main ()
    {
        int n,k;
        cin >> n >> k;
        dp[0][0] =1;
        for(int i=1;i<=n;i++)
        {
            for(int j=1;j <= i && j<=k ;j++)
            {
                dp[i][j] = dp[i-j][j] + dp[i-1][j-1];
                cout <<" dp[i-j][j]= "<<dp[i-j][j]<<" dp[i-1][j-1]"<<dp[i-1][j-1]<<endl;
                cout << i<<' '<<j<<' '<<dp[i][j]<<endl;
            }
        }
        cout << dp[1][1]<<endl;
        cout<< dp[n][k]<<endl;
    }
  • 相关阅读:
    tnagios
    python-gearman使用
    yaml
    中国大陆互联网国际出口情况(2015年)
    vsftpd配置
    spoj-ASSIGN-bitDP
    spoj-ANARC05H -dp
    Light oj 1379 -- 最短路
    SPOJ-394-ACODE
    2018年东北农业大学春季校赛
  • 原文地址:https://www.cnblogs.com/Draymonder/p/7507355.html
Copyright © 2011-2022 走看看