HDU 1021 Fibonacci Again 数学题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 1021 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个数是否是3的倍数。
首先先看数据范围n<1000000,一看就知道模拟不能过。
所以就开始枚举找规律。
位置 0 1 2 3 4 5 6
数值 7 11 18 29 47 76 123
对三取模后的值 1 2 0 2 2 1 0
 
 
 
 
 
然后发现第2个和第6个取模的值是一样的,于是就想是不是一个周期函数呢,继续枚举发现好像是,那么代码就非常简单了。
代码如下:
 1 #include<cstdio>
 2 #include<cmath>
 3 #include<cstring>
 4 #include<iostream>
 5 using namespace std;
 6 int main(){
 7     int n;
 8     while(scanf("%d",&n)!=EOF)
 9     {
10         n=n+2;
11         if (n%4==0)
12         printf("yes\n");
13         else
14         printf("no\n");
15     }
16     return 0;
17 }

 

以上是关于HDU 1021 Fibonacci Again 数学题的主要内容,如果未能解决你的问题,请参考以下文章

hdu-1021 Fibonacci Again

HDU 1021[Fibonacci Again]规律

hdu 1021 Fibonacci Again 找规律

快速幂 HDU-1021 Fibonacci Again , HDU-1061 Rightmost Digit , HDU-2674 N!Again

hdu 1021 Fibonacci Again(变形的斐波那契)

杭电1021Fibonacci Again