杭电2018母牛的故事

program description

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

input

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

output

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

sample input

2

4

5

0

sample output

2

4

6

不多说,代码奉上

#include<iostream>
using namespace std;
int main()
{
int n,a[60];
while (cin >> n&&n)//输入n&&n表示n不等于零
{
a[1] = 1;
a[2] = 2;
a[3] = 3;
a[4] = 4;
for (int i = 5; i < 60; i++)
a[i] = a[i - 1] + a[i - 3];//当年的牛的数量等于去年牛的数量加上去年可以生小母牛的母牛的数量,而去年可以生小母牛的数量等于三年前的母牛的数量
cout << a[n] << endl;
}
return 0;
}

时间: 2024-10-12 13:26:05

杭电2018母牛的故事的相关文章

杭电 1408 盐水的故事(double精度问题)

盐水的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 13446    Accepted Submission(s): 3272 Problem Description 挂盐水的时候,如果滴起来有规律,先是滴一滴,停一下:然后滴二滴,停一下:再滴三滴,停一下...,现在有一个问题:这瓶盐水一共有VUL毫升,每一滴是D毫升,每一滴的

杭电2018多校第一场(2018 Multi-University Training Contest 1) 1001.Maximum Multiple (HDU6298)-数学思维题(脑子是个好东西,可惜我没有)

暑假杭电多校第一场,这一场是贪心场,很多贪心的题目,但是自己太菜,姿势挫死了,把自己都写吐了... 2018 Multi-University Training Contest 1 HDU6298.Maximum Multiple 题目意思就是给你一个n,找出来三个数x,y,z, 使得n=x+y+z,而且x,y,z都是n的因数,并且x*y*z为最大值,让你输出来x*y*z的最大值.如果没有满足条件的情况就输出-1. 由1=1/2+1/3+1/6=1/3+1/3+1/3=1/2+1/4+1/4,所

Hdu 2018母牛的故事

母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 83526    Accepted Submission(s): 41487 Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测试

hdu 2018 母牛的故事(java)

问题: 此题主要是一个递推算法,审题要仔细,小母牛是自它被生下开始第四年开始产子,递归公式为n=a(n-1)+(n-3). 之前看过别人的算法用了大数,其实没必要,在范围内int就可以装下. 母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 51574    Accepted Submission(s): 25849 Prob

杭电ACM2018--母牛的故事

母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 120200    Accepted Submission(s): 58541 Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测

hdu 2018 母牛的故事(递推)

第i年的牛数=第i-1年的+第i-1年能生的 dp[i] = dp[i-1] + dp[i-3]; ( i >= 4 ) #include <iostream> #include <cstdio> using namespace std; int dp[60]; int main() { dp[1] = 1; dp[2] = 2; dp[3] = 3; for( int i = 4; i <= 55; i++ ) dp[i] = dp[i-1] + dp[i-3]; i

杭电2018

斐波那契数列问题,公式:  f(n)= f(n-1)+f(n-3) 代码: #include "stdio.h" long long dp[55]; int main(){ int i,n; dp[1]=1; dp[2]=2; dp[3]=3; dp[4]=4; for(i=5;i<=55;i++){ dp[i]=dp[i-1]+dp[i-3]; } while(~scanf("%d",&n) && n!=0){ printf(&quo

杭电ACM1408——盐水的故事

简单的题目,RT,就可以写出代码.需要注意的是类型的应用,应该用浮点型. 下面的是AC的代码: #include <iostream> using namespace std; int main() { double VUL, D; int time, i, flag; while(cin >> VUL >> D) { time = 0; i = 1; flag = 0; while(VUL > 0) { for(int j = 1; j <= i; j++

杭电2018多校第一场(2018 Multi-University Training Contest 1) 1008.RMQ Similar Sequence (HDU6305) -笛卡尔树+数学期望

6305.RMQ Similar Sequence 这个题的意思就是对于A,B两个序列,任意的l,r,如果RMQ(A,l,r)=RMQ(B,l,r),B序列里的数为[0,1]的实数,B的重量为B的所有元素的和,否则为0.问你B的期望重量是多少. dls讲题说是笛卡尔树,笛卡尔树是一种特定的二叉树数据结构,具体的看这篇博客吧:[pushing my way]笛卡尔树 这个题就是笛卡尔树同构的问题,假设A的笛卡尔树的子树大小为sz[u],那么序列B与A同构的概率为,因为B中的数满足均匀分布(因为B中