智力題 環回到原點問題

2021-10-25 05:41:52 字數 585 閱讀 5442

乙個環上有10個點,編號為0-9,從0點出發,每步可以順時針到下乙個點,也可以逆時針到上乙個點,求:

經過n步回到0點有多少種不同的走法?

舉例:如果n=1,則出發只能到1或者9,不可能回到0,共0種走法。如果n=2,則從0出發有4條路徑:0->1->0,0->1->2,0->9->8,0->9->0,其中有兩條回到了0點,故有兩種走法。

思路:考慮用動態規劃的思想,只可能從左邊或者右邊相鄰點回到原點,即先到旁邊的點,看看有多少回來的方法。

所以動態轉移方程為dp[k][n]=dp[k-1][(n-1+10)%10]+dp[k-1][(n+1)%10] //其中,第一維為具體步數,第二維為位置。取模保證範圍在0-n-1,初始n=0,從0號位置開始。

遞迴寫法:

#include #include using namespace std;

int dfs(int n,int pos)

int main()

; dp[0][0]=1;

for(int i=1;i<=n;i++) //步數

}cout

}

求職面試 智力題 智力題彙總

25匹馬 5個跑道 找top3,要多少次比賽 top3 推廣 找top5 解答 最後拿完對局 請設計乙個遊戲 地面上擺放著若干顆石子,甲乙兩人輪流從中提取石子,每人每輪最少提取2顆,最多提取5顆,取到最後一顆石子者為勝 請設定這堆石子的顆數 至少50顆 使先手有必勝的策略,並說明你的策略 設定的石子...

面試智力題 硬幣問題

題目一 你的面前有30個硬幣,其中有10個正面朝上,20個反面朝上,混亂在一團。要求 現在用厚布遮住你的眼睛。要你把30個硬幣分成2團,每團正面朝上的硬幣個數相等。問 你要怎麼分?不能用手去觸控感覺,也沒有其他人幫忙。題目二 我們用4位二進位制數表示硬幣的狀態。由於最終的結果只要4枚硬幣狀態一樣就行...

面試智力題 硬幣問題

題目一 你的面前有30個硬幣,其中有10個正面朝上,20個反面朝上,混亂在一團。要求 現在用厚布遮住你的眼睛。要你把30個硬幣分成2團,每團正面朝上的硬幣個數相等。問 你要怎麼分?不能用手去觸控感覺,也沒有其他人幫忙。題目二 我們用4位二進位制數表示硬幣的狀態。由於最終的結果只要4枚硬幣狀態一樣就行...