問題描述記 f(將整數
n 分成
k份,且每份不能為空,任意兩份不能相同 (不考慮順序)。
例如:n=7,k=3,下面三種分法被認為是相同的。
, ,
問有多少種不同的分法。
輸入:n,k
輸出:乙個整數,即不同的分法。
樣例
輸入: 7 3
輸出:4
四種分法為:,,,(6
<
n<=
200,
2<=
k<=6)
i,j)
為 k=
i ,n=
j ,即將
j 分成
i份時的方案數。f(
1,1)
=1
f(i,
j)=f
(i−1
,j−1
)+f(
i,j−
i)∗[
j>i]
分兩種情況討論:
1.劃分出的最小數為
1 ,方案數為 f(
i−1,
j−1)
,即在將 j−
1 分成 i−
1 份的劃分方案的基礎上再多劃分乙個數
1 的方案數。
2.劃分出的最小數大於
1,方案數為 f(
i,j−
i),即將 j−
i 分成
i 份時劃分出的
i個數都加上
1 的方案數。
真是很有意思的思路。。。
NOIP2001 數的劃分
codevs 1039 1039 數的劃分 2001年noip全國聯賽提高組 時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解 題目描述 description 將整數n分成k份,且每份不能為空,任意兩種劃分方案不能相同 不考慮順序 例如 n 7,k 3,下面三種劃分方案被認...
noip2001 數的劃分 2008 11 5
noip2001 數的劃分 2008.11.5 心得 本以為搜尋過不了,只有dp可以ac,實際上,搜尋也可以過完。如果實在想不出來 dp,那就用最好的搜尋來做!法一 搜尋 program sdhf const fin sdhf.in fout sdhf.out var n,k,sum longint...
NOIP 2001普及組 數的劃分
題目描述 我們要求找出具有下列性質數的個數 包含輸入的自然數n 先輸入乙個自然數n n 1000 然後對此自然數按照如下方法進行處理 1.不作任何處理 2.在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 4.加上數後,繼續按此規則進行處理,直到不能再加自然數為止。題目分析 看到這道題,最容易...