zoukankan      html  css  js  c++  java
  • HDU2018 斐波那契

    题解:

    斐波那契数列的变形,递归求解即可。

    设第n年有cow(n)头母牛

    根据题意,第一年有1头,第二年有2头,第三年有3头。

    当n>3,在cow(n)头母牛中,有cow(n-2)头可以生小母牛,所以下一年的母牛数cow(n+1) = cow(n) + cow(n-2)

    所以求第n年母牛数的递推公式为:cow(n) = cow(n-1) + cow(n-3)

    代码:

     1 #include <iostream>
     2 using namespace std;
     3 int cow(int n)
     4 {
     5     if(1 > n)    return 0;
     6     if(1 == n)
     7         return 1;
     8     if(2 == n)    
     9         return 2;
    10     if(3 == n)    
    11         return 3;
    12     else
    13         return cow(n-1) + cow(n-3);        
    14 } 
    15 int main(int argc, char *argv[])
    16 {
    17     int n;
    18     while(1)
    19     {
    20         cin>>n;
    21         if(0 == n)
    22             return 0;
    23         cout<<cow(n)<<endl; 
    24     } 
    25     return 0;
    26 }
  • 相关阅读:
    MRO C3算法 super的运用
    约束 抛异常
    反射
    Ubuntu
    Vim
    Vim
    Arithmetic
    Docker-常用命令
    Docker
    Docker-LAMP开发环境
  • 原文地址:https://www.cnblogs.com/mycd/p/5658075.html
Copyright © 2011-2022 走看看