题目:
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
解题:
代码:
//
// main.cpp
// hdu1021
//
// Created by zhan_even on 2018/10/22.
// Copyright © 2018年 zhan_even. All rights reserved.
//
#include <iostream>
using namespace std;
int main(int argc, const char * argv[]) {
int number;
while(cin >> number){
if ((number+2)%4==0 ){
cout<<"yes"<<endl;
}
else
cout<<"no"<<endl;
}
return 0;
}
本文探讨了一种特殊的Fibonacci数列,其起始值为7和11,随后的每一项都是前两项的和。文章提供了一个简洁的算法,用于判断该数列中任意一项是否能被3整除。通过观察数列的周期性,发现每4项中第3项可以被3整除,从而快速判断任意项是否符合条件。
335

被折叠的 条评论
为什么被折叠?



