HDOJ 1028 數的拆分 (母函式)
Ignatius and the Princess III
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 16742 Accepted Submission(s): 11783
Problem Description "Well, it seems the first problem is too easy. I will let you know how foolish you are later." feng5166 says.
"The second problem is, given an positive integer N, we define an equation like this:
N=a[1]+a[2]+a[3]+...+a[m];
a[i]>0,1<=m<=N;
My question is how many different equations you can find for a given N.
For example, assume N is 4, we can find:
4 = 4;
4 = 3 + 1;
4 = 2 + 2;
4 = 2 + 1 + 1;
4 = 1 + 1 + 1 + 1;
so the result is 5 when N is 4. Note that "4 = 3 + 1" and "4 = 1 + 3" is the same in this problem. Now, you do it!"
Input The input contains several test cases. Each test case contains a positive integer N(1<=N<=120) which is mentioned above. The input is terminated by the end of file.
Output For each test case, you have to output a line contains an integer P which indicate the different equations you have found.
Sample Input 4 10 20
母函式解析http://blog.csdn.net/vsooda/article/details/7975485// // main.cpp // 數的拆分(母函式的應用) // // Created by 張嘉韜 on 16/1/26. // Copyright © 2016年 張嘉韜. All rights reserved. // #include <iostream> using namespace std; int main(int argc, const char * argv[]) { //freopen("") int n,c1[200],c2[200]; while(scanf("%d",&n)==1) { 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;j+k<=n;k=k+i) { c2[k+j]+=c1[j]; } } for(int j=0;j<=n;j++) { c1[j]=c2[j]; c2[j]=0; } } cout<<c1[n]<<endl; } return 0; }
相關推薦
HDOJ 1028 數的拆分 (母函式)
Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1
HDOJ-1398 Square Coins(母函式/DP)
題目描述 Square Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1
HDOJ 題目1709 The Balance(母函式)
The Balance Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 5756 Accepted Su
人工智慧新手入門——高數篇(多元函式)
多元函式: 多元函式就是有多個因變數的函式,咱們之前接觸的函式基本都是一元的也就是 長成這樣的,接下來咱們要了解的多元函式是長成這樣的 。 概念: 接下來咱們引進一個概念來看一下: 北風
HDU1028 Ignatius and the Princess III(母函式)
Ignatius and the Princess III Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s)
2017多校訓練賽第一場 HDU 6042 (母函式)
Journey with Knapsack Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 164 A
nyoj 整數劃分 90 (母函式)
整數劃分 時間限制:3000 ms | 記憶體限制:65535 KB 難度:3 描述 將正整數n表示成一系列正整數之和:n=n1+n2+…+nk, 其中n1≥n2≥…≥nk≥1,k≥1。 正整數n的這種表示稱為正整數n的劃分。求正整數n的不
杭電ACM hdu 2152 Fruit 解題報告(母函式)
Problem Description 轉眼到了收穫的季節,由於有TT的專業指導,Lele獲得了大豐收。特別是水果,Lele一共種了N種水果,有蘋果,梨子,香蕉,西瓜……不但味道好吃,樣子更是好看。 於是,很多人們慕名而來,找Lele買水果。 甚至連大名鼎鼎的HDU ACM
hdoj problem2084 數塔(動態規劃)
數塔 http://acm.hdu.edu.cn/showproblem.php?pid=2084 Time Limit: 1000/1000 MS (Java/Others) Memory L
HDU 2152(母函式)
Problem Description 轉眼到了收穫的季節,由於有TT的專業指導,Lele獲得了大豐收。特別是水果,Lele一共種了N種水果,有蘋果,梨子,香蕉,西瓜……不但味道好吃,樣子更是好看。 於是,很多人們慕名而來,找Lele買水果。 甚至連大名鼎鼎的HDU ACM
hdu 2189 悼念512汶川大地震遇難同胞——來生一起走 (母函式)
題目連結 媽媽 你別哭 淚光照亮不了 我們的路 讓我們自己 慢慢的走 媽媽 我會記住你和爸爸的模樣 記住我們的約定 來生一起走 加油,中國! #include"stdio.h" #include"ma
杭電ACM hdu 2082 找單詞 解題報告(母函式)
Problem Description 假設有x1個字母A, x2個字母B,..... x26個字母Z,同時假設字母A的價值為1,字母B的價值為2,..... 字母Z的價值為26。那麼,對於給定的字母,可以找到多少價值<=50的單詞呢?單詞的價值就是組成一個單詞的所有
杭電ACM hdu 2079 選課時間 解題報告(母函式)
Problem Description 又到了選課的時間了,xhd看著選課表發呆,為了想讓下一學期好過點,他想知道學n個學分共有多少組合。你來幫幫他吧。(xhd認為一樣學分的課沒區別)Input輸入資料的第一行是一個數據T,表示有T組資料。每組資料的第一行是兩個整數n(1
HDU 1709 (母函式)
The Balance Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot
卡特蘭數通項公式(母函式,牛頓展開)
組合意義非常顯然,經典的路徑問題。這裡主要討論母函式以及牛頓展開的證明。 考慮卡特蘭數的遞推式,發現這是一個卷積式 令 f (
HDU 1028 (母函式或者dp)
“The second problem is, given an positive integer N, we define an equation like this: N=a[1]+a[2]+a[3]+…+a[m]; a[i]>0,1<
【POJ - 1664】放蘋果 (遞迴經典題 或 dp 或 母函式)
題幹: 把M個同樣的蘋果放在N個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分法?(用K表示)5,1,1和1,5,1 是同一種分法。 Input 第一行是測試資料的數目t(0 <= t <= 20)。以下每行均包含二個整數M和N,以空格分開。1<=M,N&
Oracle資料庫欄位資料拆分成多行(REGEXP_SUBSTR函式)
做多選功能時為了簡便,會在某個欄位中儲存多個值,儲存時雖然省事,但後續的查詢統計時還需要拆分資料才行,因此這時需要將欄位內的值分成多行以便後續使用。 下面這個例子實現了欄位內資料的拆分: --建立測試表 create table t_test( t_type_id varchar2
納新題】湊數題(恰好裝滿類0-1揹包 或 母函式)
題幹: 描述 小Q手裡有n枚硬幣,每枚硬幣有一定的金額x,他想知道,用這些硬幣能組成多少種不同的金額。但是他太笨了,自己數懵了,你來幫幫他好不好? 注意:組成金額時,每枚硬幣只能用一次,但可以同時使用等面值的不同硬幣 輸入 第一行 n,表示第二行一共有n個數
(基本母函式 + 指數型母函式)【板子】
啥時候忘了就及時學習學習: 連結如下 : 母函式 指數型母函式 相關PPT 因為都是板子題,不解釋啦 基本母函式板子: 題意:給你一些水果,讓你從中挑選m個水果,並且規定每種水果挑選時的數量,求方案數 參考程式碼 #includ