2011年8月11日 星期四

d261: 11000 - Bee

內容 :
    在非洲有一種非常特別的蜜蜂。每一年母蜂會生一隻公蜂,而公蜂會生一隻公蜂和一隻母蜂,然後死去。
    現在,科學家在偶然中發現了一隻這種品種的母蜂,而且這是一隻「神奇」的母蜂,因為她永遠都不會死,而且每年都可以像其他正常的母蜂一樣生一隻公蜂。科學家想要知道,在 N 年後會有多少隻蜜蜂。請寫一個程式幫他們算出在 N 年後公蜂的數目以及所有蜜蜂的數目。
輸入說明 :
輸入含有多組測試資料。每組測試資料一列,有1個正整數 N( N >= 0)。

    當 N = -1 時代表輸入結束。請參考Sample Input。

輸出說明 :
    對每一組測試資料輸出一列,第一個數字為N年後公蜂的數目,第二個數字為N年後所有蜜蜂的數目。
    這2個數都不會超過 232。

範例輸入 :
1 3 -1

範例輸出 :
1 2 4 7

出處 :
    ACM 11000

程式碼 :
#include<stdio.h>

int main()
{
    int i,year;
    long long male,female,temp_male,temp_female;
    
    while(scanf("%d",&year)==1)
    {
        if(year < 0)
            break;
        
        male = 0;
        female = 1;
        
        for(i=0; i<year; i++)
        {
            temp_female = 1 + male;
            temp_male = female + male;
            male = temp_male;
            female = temp_female;
        }
        printf("%lld %lld\n",male,male+female);
    }
    return 0;
}




http://zerojudge.tw/ShowProblem?problemid=d261

沒有留言:

張貼留言