1. 程式人生 > >【例3.4】昆蟲繁殖

【例3.4】昆蟲繁殖

spa iostream += ble clas .cn 3.4 pro ()

【例3.4】昆蟲繁殖

鏈接:http://ybt.ssoier.cn:8088/problem_show.php?pid=1312


時間限制: 1000 ms 內存限制: 65536 KB

科學家在熱帶森林中發現了一種特殊的昆蟲,這種昆蟲的繁殖能力很強。每對成蟲過x個月產y對卵,每對卵要過兩個月長成成蟲。假設每個成蟲不死,第一個月只有一對成蟲,且卵長成成蟲後的第一個月不產卵(過X個月產卵),問過Z個月以後,共有成蟲多少對?0<=X<=20,1<=Y<=20,X<=Z<=50。

【輸入】

x,y,z的數值。

【輸出】

過Z個月以後,共有成蟲對數。

【輸入樣例】

1 2 8

【輸出樣例】

37
題解:a[i]表示當月有多少成蟲,b[i]表示當月新生蟲
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
long long a[55],b[55];
int main()
{
    int x,y,z;
    cin>>x>>y>>z;
    for(int i=1;i<=x;i++)
    {
        a[i]=1;b[i]=0;
    }
    for(int i=x+1
;i<=z+1;i++) { b[i]=a[i-x]*y; a[i]+=a[i-1]+b[i-2]; } cout<<a[z+1]<<endl; }

【例3.4】昆蟲繁殖