Part 1 4 函式,遞迴及遞推

2021-10-17 10:02:15 字數 2060 閱讀 3228

補一補基礎題

題目描述

我們要求找出具有下列性質數的個數(包含輸入的正整數 nnn)。

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

不作任何處理;

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

加上數後,繼續按此規則進行處理,直到不能再加正整數為止。

輸入格式

111 個正整數 nnn(n≤1000n \le 1000n≤1000)

輸出格式

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

輸入輸出樣例

輸入

輸出

#include

using

namespace std;

intmain()

else f[i]

=f[i-1]

;}cout<<}

感覺學了這個對動態規劃會有更深層次的了解,哎,基礎很重要呀,感覺要把基礎打牢固了,其實一些比賽就是比誰做的更快,掌握的更牢固呀。

#include

#define ll long long

ll dp[25]

[25][

25];ll w

(ll a, ll b, ll c)

if(dp[a]

[b-1

][c-1]

==0)if

(dp[a]

[b-1

][c]==0

) dp[a]

[b][c]

= dp[a]

[b][c-1]

+ dp[a]

[b-1

][c-1]

- dp[a]

[b-1

][c];}

else

//同上

if(dp[a-1]

[b-1

][c]==0

)if(dp[a-1]

[b][c-1]

==0)if

(dp[a-1]

[b-1

][c-1]

==0) dp[a]

[b][c]

= dp[a-1]

[b][c]

+ dp[a-1]

[b][c-1]

+ dp[a-1]

[b-1

][c]

- dp[a-1]

[b-1

][c-1]

;}return dp[a]

[b][c];}

intmain()

}

感覺還需要掌握記憶話搜尋的精髓

題目描述

將整數nnn分成kkk份,且每份不能為空,任意兩個方案不相同(不考慮順序)。

例如:n=7n=7n=7,k=3k=3k=3,下面三種分法被認為是相同的。

1,1,51,1,51,1,5;

1,5,11,5,11,5,1;

5,1,15,1,15,1,1.

問有多少種不同的分法。

輸入格式

n,kn,kn,k (6111個整數,即不同的分法。

#include

using

namespace std;

int n,k;

inline

intdfs

(int num,

int part,

int now)

//剩餘待分的數 分的機會數 現在要選出的數

return sum;

}int

main()

感覺又是一道很好的dfs題 但是這個的動態規劃感覺有點難想 轉移方程不大會寫呢

numpy基礎 part14 積分

學習筆記,這個筆記以例子為主。開發工具 spyder import scipy.integrate as si 利用quad求積分 給出函式f,積分下限與積分上限 a,b 返回 積分值,最大誤差 area si.quad f,a,b 返回值為乙個陣列,第乙個值為積分值,第二個為誤差 在 5,5 區間...

Part14 電源模組設計集合

電路說明 本電路採用常見的穩壓晶元lm7805,採用直插式,電流可以達到1.5a,若採用貼片式可以達到1a。電路說明 本電路採用 spx1117 3.3 晶元,輸入直流電壓5v,輸出電壓3.3v,電流可達0.8a,晶元 非常便宜。晶元也有相應1.8 1.2 2.5v的晶元,可以直接替換使用。電路說明...

遞推遞迴 C 遞迴的函式

題目 description 給定乙個函式 f a,b,c 如果 a 0 或 b 0 或 c 0 返回值為 1 如果 a 20 或 b 20 或 c 20 返回值為 f 20,20,20 如果 a b 並且 b c 返回 f a,b,c 1 f a,b 1,c 1 f a,b 1,c 其它情況返回 ...