zoukankan      html  css  js  c++  java
  • HDU 2018 DP

    A - 母牛的故事
    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u

    Description

    有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

    Input

    输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。 
    n=0表示输入数据的结束,不做处理。

    Output

    对于每个测试实例,输出在第n年的时候母牛的数量。 
    每个输出占一行。

    Sample Input

    2
    4
    5
    0

    Sample Output

    2
    4
    6


    题意应该都能懂。

    代码:

    #include<stdio.h>
    #include<string.h>

    #define N 100

    long long f[N];
    int n;

    void init()
    {
    int i;
    f[1] = 1;//最初的母牛。
    f[2] = 2;
    f[3] = 3;
    f[4] = 4;//只有最初的母牛生小牛;


    for(i = 5; i < N ;i++)//从第五年有小牛开始生小牛。
    f[i] = f[i-1] + f[i-3];//第i年的牛数等于i-1年的牛数加上i-3年的牛数,i-3年到第i年正好四年,第i-3年的牛都会在第i年生一头牛, 所以加上f[i-3]。
    }
    int main(void)
    {

    init();
    while(scanf("%d", &n), n)
    {
    printf("%lld ", f[n]);
    }

    return 0;

    }

  • 相关阅读:
    【bzoj4240】有趣的家庭菜园
    「洛谷 P1801」黑匣子
    「SDOI 2009」Elaxia的路线
    NOIP 2016【蚯蚓】
    NOIP 2014【斗地主】
    尺取法
    POJ 3169 Layout
    51nod【1196】字符串的数量
    51nod1671【货物运输】
    hihocoder1075【开锁魔法】
  • 原文地址:https://www.cnblogs.com/dll6/p/5744328.html
Copyright © 2011-2022 走看看