1. 程式人生 > >Fibonacci Again之解題思路

Fibonacci Again之解題思路

Problem Description There are another kind of Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n-1) + F(n-2) (n>=2).

Input Input consists of a sequence of lines, each containing an integer n. (n < 1,000,000).

Output Print the word "yes" if 3 divide evenly into F(n).

Print the word "no" if not.

Sample Input 0 1 2 3 4 5
Sample Output no no yes no no no解題思路:   如果採用遞迴,對於小的資料n可以實現,而當n<1000000時,我們發現找不到一個數據型別來儲存f(n)。因此當我們嘗試列出n從0-10時便能發現規律;對n%==2時便能被三整除。於是程式也不難寫出。
程式碼如下:
#include<stdio.h>
int main()
{
    int n;
    while(scanf("%d",&n)!=EOF)
    {
        if(n%4==2)
            printf("yes\n");
        else
            printf("no\n");
    }
    return 0;

}