題目描述
fj想n頭牛(公牛或母牛)排成一排接受胡總的檢閱,經研究發現公牛特別好鬥,如果兩頭公牛離得太近就會發生衝突,通過觀察兩頭公牛之間至少要有k(0<=k<=n)頭母牛才能避免衝突。
fj想請你幫忙計算一共有多少種放置方法,注意所有的公牛被認為是一樣的,母牛也是,所以兩種放置方法被認為不同當且僅當某些位置牛的種類不同。
input
第一行:兩個空格隔開的整數n(n<=100000)和k。
output
輸出乙個整數表示方法總數,答案可能很大,所以只需輸出mod 5,000,011的值即可。
sample input
4 2sample output
分析
其實把k相等時的資料退出來即可,如k=2時:
n: 1 2 3 4 5 6
f: 2 3 4 6 9 13
發現了嗎?其實當i>k+1時,fi的值為fi-1+fi-k-1
當i<=k+1時,fi的值為fi-1 +1
f0的值為1
那麼這題完美解決
#include
#include
#define rep(i,a,b) for (i=a;i<=b;i++)
using
namespace
std;
int n,k,i;
long
long f[100001];
int main()
JZOJ 1292 公牛和母牛
description fj想n頭牛 公牛或母牛 排成一排接受胡總的檢閱,經研究發現公牛特別好鬥,如果兩頭公牛離得太近就會發生衝突,通過觀察兩頭公牛之間至少要有k 0 k n 頭母牛才能避免衝突。fj想請你幫忙計算一共有多少種放置方法,注意所有的公牛被認為是一樣的,母牛也是,所以兩種放置方法被認為不...
公牛數學 大數乘法
公牛在數學上比母牛好得多。他們可以將巨大的整數相乘,並獲得完全精確的答案 或者他們這樣說。農夫約翰想知道他們的答案是否正確。幫助他檢查公牛隊的答案。讀兩個正整數 每個不超過40位 並計算其乘積。將其輸出為正常數字 沒有多餘的前導零 fj要求您自己執行此操作 不要對乘法使用特殊的庫函式。輸入值 第1 ...
公牛數學 jzoj 1896
題目描述 公牛在數學方面比奶牛強很多,他們自稱可以計算很大的整數之間的乘法,並得到精確的結果。農夫約翰想知道他們的答案是否正確。請你幫助他檢查公牛的答案。讀入2個正整數 不大於10 40 計算他們的乘積,輸出乙個自然數 不能含有多餘的零 約翰農夫讓你自己做這個工作。輸入 第1.2行 每行包含乙個十進...