Hdoj 2018.母牛的故事 题解】的更多相关文章

Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述. n=0表示输入数据的结束,不做处理. Output 对于每个测试实例,输出在第n年的时候母牛的数量. 每个输出占一行. Sample Input 2 4 5 0 Sample Output 2 4 6 Auth…
Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0 import java.util.Scanner; class Main{ public static void main(String args[]){ long a[] = new long[56]; a[1]=1; a[2]=2; a[3]=…
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2018 母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 104893    Accepted Submission(s): 51449 Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年…
母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 33371    Accepted Submission(s): 16459 Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛?   Input 输入数据由多…
母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 82067    Accepted Submission(s): 40750 Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛?   Input 输入数据由多个…
今天刚考完试,和杨曙光玩了RPG,实在不想看题了 /***************************************************/ 母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 53047    Accepted Submission(s): 26610 Problem Description 有一…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2018 设 f[i][j] 表示第i天年龄为j的母牛个数,其中j=4代表所有年龄达到4岁的成年母牛,则: f[1][4] = 1 f[1][i] = 0, i = 1,2,3 f[i][4] = f[i-1][4] + f[i-1][3] f[i][3] = f[i-1][2] f[i][2] = f[i-1][1] f[i][1] = f[i][4] 代码: #include <iostream>…
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2018 思路分析: 问题分析:这道题的递推关系非常类似斐波那契数列,由题意不难得到以下函数递推式: 对于上述的递推函数,最简单的做法是编写一个递归的函数来实现.实际上,本题的递推函数是可以用一个递推过程的函数来实现的,即不需要用递归函数来实现.用递推函数效率(计算的时间更少,使用的空间更小)会更高.不过,递归函数也是常用的,这里是用递归函数实现计算过程. 代码如下: #include <iostrea…
#include<stdio.h> int main(void) { int i,n,j,k; long long narr[60]; narr[1]=1; narr[2]=2; narr[3]=3; narr[4]=4; narr[5]=6; for(i=6; i<55; i++) { narr[i]=narr[i-1]+narr[i-3]; } while(scanf("%d",&n)!=EOF,n) { printf("%lld\n"…
题意: 如题 思路: 递推的思想,牛只能在第4年才能开始生小牛,对于 第n年有多少牛 = n-1年的牛数量 + 新出生的牛的数量 新出生的牛的数量 = 已经出生满4年的牛的数量 = n-3年时候牛的数量 代码: #include<iostream> using namespace std; const int maxn = 70; int a[maxn]; void init() { a[1] = 1; a[2] = 2; a[3] = 3; a[4] = 4; for (int i = 5;…