HDU 2018 母牛的故事 [补]

时间:2021-11-26 17:04:31

今天刚考完试,和杨曙光玩了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
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
 
Input
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。
 
Output
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。
 
Sample Input
2
4
5
0
 
Sample Output
2
4
6
 
Author
lcy
 
Source
 
Recommend
lcy   |   We have carefully selected several similar problems for you:  2050 1297 2190 2049 2501
 
一次a的不过用的方法很麻烦,我是分成大,小3,小2,小1,3种母牛。大,小3,小2,小1看成一组,叫4小组,大,小2,小1看成一种组,叫3小组,大,小1叫2小组,然后各用一个数组。通过上一年与下一年的关系推出最后的结果。最后我都用c数组表示了,a,b数组消掉了。
 #include<math.h>
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std; __int64 c[];
int n;
int main()
{
c[]=c[]=c[]=;
c[]=;c[]=;c[]=;c[]=;c[]=;
for(int i=;i<;i++)
{
c[i]=c[i-]+c[i-];
}
n=;
while(n<)
{
if(n==){cout<<<<endl;n++;continue;}
if(n==){cout<<<<endl;n++;continue;}
if(n==){cout<<<<endl;n++;continue;}
// printf("%d\n",c[n]);
printf("%d\n",*c[n]+*c[n-2]+*c[n-]);
n++;
}
return ;
}
 在网上看了别人的代码,两种方法都比我的简单,
 #include<math.h>
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std; __int64 c[];
int n;
int main()
{
c[]=,c[]=,c[]=,c[]=;
for(int i=;i<;i++)
{
c[i]=c[i-]+c[i-];
}
while(~scanf("%d",&n),n)
{
printf("%d\n",c[n]);
}
return ;
}
 #include<iostream>
using namespace std;
int main()
{
int n;
while(cin>>n)
{
if(n==)break;
int a,b,c,d; //分别代表一岁二岁三岁四岁及其以上的母牛的数目。
if(n<=)cout<<n<<endl; //*若n<=4,很容易得出总数为n
else{
n=n-;
a=b=c=d=;
for(int i=;i<n;i++)
{
d=c+d;//*当年大母牛数目d为前一年c和d的总和
c=b;//*b母牛长了一岁到了c
b=a;//*同上
a=d;//*长成的母牛和原本的母牛共生出新的小母牛a个
}
cout<<a+b+c+d<<endl;
}
}
}

HDU 2018 母牛的故事 [补]的更多相关文章

  1. HDU 2018母牛的故事(类似斐波那契,找规律)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2018 母牛的故事 Time Limit: 2000/1000 MS (Java/Others)     ...

  2. hdu 2018 母牛的故事(简单dp)

    母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  3. hdu 2018 母牛的故事 动态规划入门题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2018 设 f[i][j] 表示第i天年龄为j的母牛个数,其中j=4代表所有年龄达到4岁的成年母牛,则: ...

  4. HDU 2018 母牛的故事 (递归入门)

    原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2018 思路分析: 问题分析:这道题的递推关系非常类似斐波那契数列,由题意不难得到以下函数递推式: 对于 ...

  5. hdu 2018 母牛的故事

    #include<stdio.h> int main(void) { int i,n,j,k; long long narr[60]; narr[1]=1; narr[2]=2; narr ...

  6. HDU - 2018 - 母牛的故事(dp)

    题意: 如题 思路: 递推的思想,牛只能在第4年才能开始生小牛,对于 第n年有多少牛 = n-1年的牛数量 + 新出生的牛的数量 新出生的牛的数量 = 已经出生满4年的牛的数量 = n-3年时候牛的数 ...

  7. ACM YTU 2018 母牛的故事

    母牛的故事 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  8. HDOJ 2018 母牛的故事

    Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...

  9. Hdoj 2018&period;母牛的故事 题解

    Problem Description 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年的时候,共有多少头母牛? Input 输入数据由多个测 ...

随机推荐

  1. html常用标签介绍

    常用标签介绍 文本 最常用的标签可能是<font>了,它用于改变字体,字号,文字颜色. 点击查看效果 <font size="6">6</font&g ...

  2. dbutils 执行sql返回的数据类型

    //ArrayHandler: 把结果集中的第一行数据转成对象数组 //ArrayListHandler:把结果集中的每一行数据都转成一个对象数组,再存放到List中 //BeanHandler:将结 ...

  3. 使用Active MQ在&period;net和java系统之间通信

    ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现 一.特性列表 ⒈ 多种语言和 ...

  4. 《Zero to One》的一些读书笔记

    第一章<The Challenge of the Future>:全球化是横向的扩张,只能复制以前就有的成功,而科技创新是纵向的扩张,是创造以前不存在的东西.没有科技创新,只有全球化,这个 ...

  5. js中常用framesetiframe页面跳转传参方法实例大全

    logf的空间

  6. ORM-Dapper&plus;DapperExtensions

    ORM-Dapper+DapperExtensions 现在成熟的ORM比比皆是,这里只介绍Dapper的使用(最起码我在使用它,已经运用到项目中,小伙伴们反馈还可以). 优点: 1.开源.轻量.小巧 ...

  7. yeoman 前端自动化构建工具 generator-fountain-webapp

    直接上我的github地址. https://github.com/631535199/yo-react

  8. 从零搭建java后台管理系统(一)框架初步搭建

    框架搭建 一.初步设想,使用springboot,框架打算用到依赖 spring web,devTools,mysql,Aspect,Redis,Lombok,Freemark,Shiro,Rabbi ...

  9. POJ&period;1769&period;Minimizing maximizer&lpar;线段树 DP&rpar;

    题目链接 /* 题意:有m个区间,问最少要多少个区间能覆盖[1,n] 注:区间要按原区间的顺序,不能用排序贪心做 设dp[i]表示最右端端点为i时的最小值 dp[e[i]]=min{dp[s[i]]~ ...

  10. HttpServerProvider实现http服务接口&lpar;一&rpar;

    啥也不说了,直接上代码,简单的示例. 服务端代码: package dyan.server; import java.io.BufferedReader; import java.io.IOExcep ...