洛谷 P1028 數的計算

2021-10-04 00:00:59 字數 887 閱讀 8583

題目描述

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

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

1.不作任何處理;

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

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

輸入格式

1個自然數n(n≤1000)

輸出格式

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

輸入輸出樣例輸入6

輸出6說明/提示

滿足條件的數為

6,16,26,126,36,136

解析:仔細想想的話,發現這個其實算是乙個規律題,以4為例子

符合的數為4,14,24124

我們可以發現

f[0]=1

f[1]=f[0];

f[2]=f[1]+f[1]=2;

f[3]=f[2]=2;

f[4]=f[3]+f[2]=4;

f[5]=f[4]=4;

從上面我們可以的出,相鄰的兩個數的滿足條件的個數是相同的,且每個偶數數的滿足條件的個數為其前面乙個數的答案與其整除2之後的答案的和。

所以根據這個規律得:

#include

using

namespace std;

int rs[

1001];

intmain()

else

} cout<

}

洛谷P1028 數的計算

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

洛谷 P1028 數的計算

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

洛谷P1028 數的計算

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