[蓝桥杯][算法提高VIP]数的划分-dp
生活随笔
收集整理的這篇文章主要介紹了
[蓝桥杯][算法提高VIP]数的划分-dp
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
一個正整數可以劃分為多個正整數的和,比如n=3時:
3;1+2;1+1+1;
共有三種劃分方法。
給出一個正整數,問有多少種劃分方法。
輸入
一個正整數n
數據規模和約定
n< =100
輸出
一個正整數,表示劃分方案數
樣例輸入
3
樣例輸出
3
解題思路:
#include <iostream> using namespace std; const int N = 110; int dp[N][N];int main() {int n;cin >> n;dp[0][0] = 1;for (int i = 1; i <= n; i++)for (int j = 1; j <= i && j <= n ; j++)dp[i][j] = dp[i - j][j] + dp[i - 1][j - 1];int ans = 0;for (int i = 1; i <= n; i++) {ans += dp[n][i];}cout << ans << endl;return 0; }總結
以上是生活随笔為你收集整理的[蓝桥杯][算法提高VIP]数的划分-dp的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑没有声音怎么办电脑没有声音怎么办一键
- 下一篇: [蓝桥杯][算法提高VIP]聪明的美食家