科學家在熱帶森林中發現了一種特殊的昆蟲,這種昆蟲的繁殖能力很強。每對成蟲過x個月產y對卵,每對卵要過兩個月長成成蟲。假設每個成蟲不死,第乙個月只有一對成蟲,且卵長成成蟲後的第乙個月不產卵(過x個月產卵),問過z個月以後,共有成蟲多少對?0≤x≤20,1≤y≤20,x≤z≤50。
x,y,z的數值。
過z個月以後,共有成蟲對數。
1 2 8
37這題從兔子生小兔子衍生出來的遞推題。
通過觀察可以發現,成蟲數量與幼蟲數有關。而幼蟲數又與成蟲數有關。
所以我們就可以發現這個題目要用二個陣列去記錄數量。
按照慣例 設a(adult)為成蟲數,a[i]為當前i月的成蟲數。c為幼蟲數。
用遞推式:
a[i] = a[i-1] + c[i-2] (這個月的成蟲數 = 上月的成蟲書 +前2個月的幼蟲數-因為幼蟲變為成蟲了 )
c[i] = y*a[i-x] (而這個月的幼蟲數 = 上x個月的成蟲生的)
#include #define maxn 50using
namespace
std;
long
long a[151],c[151
];int
main()
for(int i=x;i1;++i)
cout
<< a[z]
}
資訊學奧賽一本通提高篇題解
感謝齊工大oj提供測試環境 1.1 貪心 活動安排 區間貪心,對於區間,按照右端點公升序排序,然後選擇離前乙個區間最近的不重合區間 種樹 對於區間,按照右端點公升序排序,讓樹盡量種在靠右的地方,用陣列標記狀態 噴水裝置 1.2 二分 憤怒的牛 最小值最大,二分距離mid 對於mid,如果距離大於mi...
《資訊學奧賽一本通》 位數問題 題解
時間限制 1000 ms 記憶體限制 65536 kb 提交數 3907 通過數 2025 在所有的n n位數中,有多少個數中有偶數個數字3 3 由於結果可能很大,你只需要輸出這個答案對12345 12345 取餘的值。讀入乙個數n n 1000 n n 1000 輸出有多少個數中有偶數個數字3 3...
資訊學奧賽一本通 小球(drop)
許多的小球乙個乙個的從一棵滿二叉樹上掉下來組成fbt full binary tree,滿二叉樹 每一時間,乙個正在下降的球第乙個訪問的是非葉子節點。然後繼續下降時,或者走右子樹,或者走左子樹,直到訪問到葉子節點。決定球運動方向的是每個節點的布林值。最初,所有的節點都是false,當訪問到乙個節點時...