zcmu2117(普通母函数)
生活随笔
收集整理的這篇文章主要介紹了
zcmu2117(普通母函数)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2117: 數的劃分
Time Limit:?1 Sec??Memory Limit:?128 MB
Submit:?68??Solved:?27
[Submit][Status][Web Board]
Description
一個正整數可以劃分為多個正整數的和,比如n=3時:
3;1+2;1+1+1;
共有三種劃分方法。
給出一個正整數,問有多少種劃分方法。
?
Input
一個正整數n,n<=100
?
Output
一個正整數,表示劃分方案數
?
Sample Input
3
Sample Output
3
HINT
?
Source
算法提高
解析:母函數,之前寫過母函數的博客,這是個對一些組合和拆分題很有用處
也可以用dp寫? dp對于我來說一直是硬傷
代碼:
#include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<cstdlib> #include<algorithm> #include<vector> #include<set> #include<map> #include<stack> #include<list> using namespace std; typedef long long ll; const int maxn=120+5; int c1[maxn],c2[maxn];int main() {int n;while(~scanf("%d",&n)){for(int i=0; i<=n; i++){c1[i]=1;c2[i]=0;}for(int i=2; i<=n; i++){for(int j=0; j<=n; j++){for(int k=0; k+j<=n; k+=i)//重點{c2[j+k]+=c1[j];}}for(int j=0; j<=n; j++){c1[j]=c2[j];c2[j]=0;}}printf("%d\n",c1[n]);}return 0; }?
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的zcmu2117(普通母函数)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: kibana下载安装
- 下一篇: C语言递归算法(一)