P1028 數的計算

2021-09-26 01:39:38 字數 830 閱讀 1757

我們要求找出具有下列性質數的個數(包含輸入的自然數n):

先輸入乙個自然數n(n≤1000),然後對此自然數按照如下方法進行處理:

不作任何處理;

在它的左邊加上乙個自然數,但該自然數不能超過原數的一半;

加上數後,繼續按此規則進行處理,直到不能再加自然數為止.

1個自然數n(n≤1000)

1個整數,表示具有該性質數的個數。

輸入 #1

6
輸出 #1

6
滿足條件的數為

6,16,26,126,36,136

找出滿足性質的數的個數,這題簡單一分析,遞迴直接開擼,結果直接tle。然後發現題目中n<=1000。好吧,遞迴超時。

後面仔細觀察每個數的特點。很容易就把遞推公式看出來了

n=1, f[n]=1; n=3, f[n]=2; n=5, f[n]=4;

n=2, f[2]=2; n=4, f[n]=4; n=6, f[n]=6;

#include

#include

using namespace std;

intmain()

; a[1]

=1; a[2]

=2;for

(int i=

3; i<=n; i++)}

cout << a[n]

<< endl;

return0;

}

P1028 數的計算

我們要求找出具有下列性質數的個數 包含輸入的自然數 nn 先輸入乙個自然數 nn n le 1000n 1000 然後對此自然數按照如下方法進行處理 不作任何處理 在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 加上數後,繼續按此規則進行處理,直到不能再加自然數為止.輸入格式 11 個自然數...

P1028 數的計算

我們要求找出具有下列性質數的個數 包含輸入的自然數nn 先輸入乙個自然數nn n le 1000n 1000 然後對此自然數按照如下方法進行處理 不作任何處理 在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 加上數後,繼續按此規則進行處理,直到不能再加自然數為止.輸入格式 11個自然數nn ...

P1028 數的計算

我們要求找出具有下列性質數的個數 包含輸入的自然數nn 先輸入乙個自然數nn n le 1000n 1000 然後對此自然數按照如下方法進行處理 不作任何處理 在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 加上數後,繼續按此規則進行處理,直到不能再加自然數為止.11個自然數nn n le ...