杭电OJ2018-母牛的故事
来源:互联网 发布:python 反转二叉树 编辑:程序博客网 时间:2024/05/16 05:20
Problem Description
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
Input
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。
Output
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。
Sample Input
2
4
5
0
Sample Output
2
4
6
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第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;int x[55][4]={1,0,0,0,1,1,0,0,1,1,1,0,1,1,1,1};//打表for(int i=4;i<=55;i++){x[i][0]=x[i-1][0]+x[i-1][1];x[i][1]=x[i-1][2];x[i][2]=x[i-1][3];x[i][3]=x[i][0];}while(cin>>n){if(n==0)break;cout<<x[n-1][0]+x[n-1][1]+x[n-1][2]+x[n-1][3]<<endl;}return 0;}
这道题我从去年做到今年,总觉得理解不了题意,我觉得题目有各种问题
于是我开始找规律(说多了都是泪
还就真让我发现规律了
第1年 m=1 z=0 z=0 z=0
第2年 m=1 z=1 z=0 z=0
第3年 m=1 z=1 z=1 z=0
第4年 m=1 z=1 z=1 z=1
第5年 m=2 z=1 z=1 z=2
第6年 m=3 z=1 z=2 z=3
第7年 m=4 z=5 z=3 z=4
我蠢一点,不会把长了四年的小母牛划到母牛的里面,于是把小母牛和母牛分开算
我的思路就是这样,虽然复杂了一点,好歹A过了
x[i][0]=x[i-1][0]+x[i-1][1];//母牛的数量等于前一年母牛的数量加上长了四年的小母牛的数量x[i][1]=x[i-1][2];//长了三年的小母牛的数量x[i][2]=x[i-1][3];//长了二年的小母牛的数量x[i][3]=x[i][0];//长了一年的小母牛数量取决于今年有多少母牛
0 0
- 杭电OJ2018-母牛的故事
- 【杭电oj2018】母牛的故事
- 2017-12-16杭电OJ2018 《母牛的故事》——这道题用了递归
- 杭电ACM 2018 母牛的故事
- 杭电ACM 2018 母牛的故事
- 杭电ACM----2018母牛的故事
- 杭电--2018--母牛的故事--水题
- 杭电ACM 2018 母牛的故事
- 杭电2018 母牛的故事
- 杭电 2018 母牛的故事
- 杭电 2018 母牛的故事
- 母牛的故事(杭电2018)
- 母牛的故事 杭电acm Java
- 杭电OJ 2018 母牛的故事
- 母牛的故事(杭电2018)
- 杭电acm2018母牛的故事
- 杭电2018 母牛的故事
- 杭电ACM 2018:母牛的故事
- 实现转盘抽奖的SurfaceViewDemo
- Remove Duplicates from Sorted List II
- chown命令
- python学习——WSGI接口
- CV/ML/DL关键词汇中英文对照
- 杭电OJ2018-母牛的故事
- hdu Knight Moves
- Android不同层次开启硬件加速的方式
- Codeforces Round #363 (Div. 2) B. One Bomb
- 每日一句
- [Leetcode]238. Product of Array Except Self
- Activity启动以及创建
- G-Milk
- How To Create A Client Server Application In Minutes[如何在几分钟的时间里编写一个客户机/服务器控制台程序]