YbtOJ高效高階 遞推 4 傳球遊戲

2021-10-12 23:19:58 字數 1215 閱讀 7528

ybtoj高效高階 遞推-4

上體育課的時候,小蠻的老師經常帶著同學們一起做遊戲。這次,老師帶著同學們一起做傳球遊戲。

遊戲規則是這樣的: n

nn個同學站成乙個圓圈,其中的乙個同學手裡拿著乙個球,當老師吹哨子時開始傳球,每個同學可以把球傳給自己左右的兩個同學中的乙個(左右任意),當老師再次吹哨子時,傳球停止,此時,拿著球沒有傳出去的那個同學就是敗者,要給大家表演乙個節目。

聰明的小蠻提出乙個有趣的問題:有多少種不同的傳球方法可以使得從小蠻手裡開始傳的球,傳m

mm 次以後,又回到小蠻手裡。兩種傳球方法被視作不同的方法,當且僅當這兩種方法中,接到球的同學按接球順序組成的序列是不同的。比如有三個同學 1

11 號、2

22 號、3

33 號,並假設小蠻為 1

11 號,球傳了 m

mm次回到小蠻手裡的方式有 1

−>3−

>2−

>

11->3->2->1

1−>3−

>2−

>

1 和 1

−>2−

>3−

>

11->2->3->1

1−>2−

>3−

>

1,共2

22 種。

3 3
2
挺好推的吧

應該設fi,

jf_

fi,j

​為第j個時間段,球在第i個人手裡的方案數

那因為球只能向左右兩邊傳所以fi,

j=fi

−1,j

−1+f

i+1,

j−

1f_ = f_ + f_

fi,j​=

fi−1

,j−1

​+fi

+1,j

−1​然後在1點和n點處理一下就可以了

#include

#include

#include

#include

using

namespace std;

int n, m, f[

105]

[105];

intmain()

printf

("%d"

, f[1]

[m])

;}

YbtOJ高效高階 貪心 2 雷達裝置

ybtoj高效高階 貪心 2 有n nn個建築物,第i ii個建築物在笛卡爾座標系上的座標為 xi yi x i,y i xi y i 你需要在x xx軸上安裝一些雷達,每個雷達的偵察半徑均為d dd 要求每個建築物都至少被乙個雷達偵測到,求最少要安裝幾個雷達。3 2 1 2 3 1 2 12每個點...

YbtOJ高效高階 貪心 3 畜欄預定

ybtoj高效高階 貪心 3 有n頭牛在畜欄中吃草。每個畜欄在同一時間段只能提供給一頭牛吃草,所以可能會需要多個畜欄,給出第i頭牛開始吃草的時間區間 ai bi a i,b i ai b i 求需要的最少畜欄數和每頭牛對應的畜欄方案。5 1 10 2 43 6 5 84 7412 324對每頭牛的開...

ybtoj 高效高階 1 4 深搜 數獨遊戲

用字串輸入 將其轉換成數值放入陣列a 陣列l統計當前行數字的使用情況 陣列r統計當前列數字的使用情況 陣列f統計當前3 3方格數字的使用情況 列舉當前格可以填的數字 include include include using namespace std int a 10 10 l 10 10 r 1...