Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【HDU 2160】母猪的故事

【HDU 2160】母猪的故事

作者头像
饶文津
发布于 2020-05-31 15:39:16
发布于 2020-05-31 15:39:16
59200
代码可运行
举报
文章被收录于专栏:饶文津的专栏饶文津的专栏
运行总次数:0
代码可运行

Description

话说现在猪肉价格这么贵,著名的ACBoy 0068 也开始了养猪生活。说来也奇怪,他养的猪一出生第二天开始就能每天中午生一只小猪,而且生下来的竟然都是母猪。  不过光生小猪也不行,0068采用了一个很奇特的办法来管理他的养猪场:  对于每头刚出生的小猪,在他生下第二头小猪后立马被杀掉,卖到超市里。  假设在创业的第一天,0068只买了一头刚出生的小猪,请问,在第N天晚上,0068的养猪场里还存有多少头猪? 

Input

测试数据的第一行包含有一个正整数T,代表测试数据的个数。接下来有T组测试,每组测试数据占一行,分别有一个正整数N代表0068创业的第N天。(0<N<20)

Output

对于每组数据,请在一行里输出第N天晚上养猪场里猪的数目。

Sample Input

2 2 3

Sample Output

2 3

题意:每只猪出生后第二天开始每天生一只猪,生了两只小猪后,被杀掉,第一天有一只刚出生的猪,求第N天晚上有几只猪。

分析:第i天晚上有s[i]头猪,要杀掉的猪=前天出生的猪。今天的=2*昨天的-前天出生的,前天出生的=大前天的数量,得到递推1:s[i]=2*s[i-1]-s[i-3],

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int t,n,ans[25]={0,1,2,3};
int main(){
    scanf("%d",&t);
    while(t--){
        scanf("%d",&n);
        for(int i=4;i<=n;i++)
            ans[i]=ans[i-1]*2-ans[i-3];
        printf("%d\n",ans[n]);
    }
    return 0;
} 

前天出生的=昨天的-前天的,得到递推2:s[i]=s[i-1]+s[i-2]

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include<stdio.h>
int t,n,ans[25]={0,1,2};
int main(){
    scanf("%d",&t);
    while(t--){
        scanf("%d",&n);
        for(int i=3;i<=n;i++)
            ans[i]=ans[i-1]+ans[i-2];
        printf("%d\n",ans[n]);
    }
    return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-02-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
【Gym 100733D】Little thief Shi(取数,DP)
Shi realized that he was almost out of money, even renting Shitalian lands. Shi was walking on a street, while thinking of a way to recover his fortune. In his way, he passed by a jewelry store. The owner of the store was a Shitalian man suspected of committing minor crimes, as cutting bushes and stealing old bread. Shi hated people who cut bushes, so he decided to rob the store to take revenge and make some money.
饶文津
2020/05/31
4350
HDOJ/HDU 1865 1sting(斐波拉契+大数~)
Problem Description You will be given a string which only contains ‘1’; You can merge two adjacent ‘1’ to be ‘2’, or leave the ‘1’ there. Surly, you may get many different results. For example, given 1111 , you can get 1111, 121, 112,211,22. Now, your work is to find the total number of result you can get.
谙忆
2021/01/21
2480
HDU 1250 Hat's Fibonacci
Hat's Fibonacci Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 11104    Accepted Submission(s): 3732 Problem Description A Fibonacci sequence is calculated by adding the previous two members the
Angel_Kitty
2018/04/08
6140
【UVA 11401】Triangle Counting
以i 为最大边,第二边为i-1、i-2、...2 的三角形分别有 i-2个、i-3、... 、1个,总共就有(i-1)*(i-2)/2个。有(i-1)/2条边算到了两边相等,也就是要减去 (i-1)/2,因为第二边的在第三边出现了,所以算了两次,再除以2。
饶文津
2020/06/02
2850
SDUT 2019 级程序设计基础(B)II 实验3–递推
下面兔子都以对为单位,可以看出第n天出生的是由第n-1天成年的和第n-1天新生的兔子(长大一天第n天可以生了)一起生的,而第n-1天出生的又由有第n-2天出生和成年的一起生的……如此递推,很容易得出第i天出生的兔子数:1 1 2 3 5……,同理总兔子数也可以求得为 1 2 3 5 8…即斐波那契数列。
Here_SDUT
2022/06/29
2070
SDUT 2019 级程序设计基础(B)II 实验3–递推
HDU-4539郑厂长系列故事——排兵布阵(状态压缩,动态规划)
郑厂长系列故事——排兵布阵 Time Limit : 10000/5000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other) Total Submission(s) : 9 Accepted Submission(s) : 1 Font: Times New Roman | Verdana | Georgia Font Size: ← → Problem Description   郑厂长不是正厂长   也不是副厂
ShenduCC
2018/04/25
1.1K0
HDU 2563 统计问题(递归,思维题)
统计问题 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 8705    Accepted Submission(s): 5157 Problem Description 在一无限大的二维平面中,我们做如下假设: 1、  每次只能移动一格; 2、  不能向后走(假设你的目的地是“向上”,那么你可以向左走,可以向右走,也可以向上走,但是不可以向下走
Angel_Kitty
2018/04/08
6640
【HDU 2604】Queuing
  f和m两种字母组成字符串,fmf 和 fff 这种为不安全的字符串,现在有2*L个字母,问你有多少安全的字符串。答案mod M。
饶文津
2020/06/02
3120
【HDU 2577】How to Type
(我做了这题才知道caps lock 锁定大小写后,按一下shift键可以输入相反的大小写。)
饶文津
2020/06/02
2440
HDU 1573 X问题
Problem Description 求在小于等于N的正整数中有多少个X满足: Input 输入数据的第一行为一个正整数T,表示有T组测试数据。每组测试数据的第一行为两个正整数N,M (0 < N <= 1000,000,000 , 0 < M <= 10),表示X小于等于N,数组a和b中各有M个元素。接下来两行,每行各有M个正整数,分别为a和b中的元素。 Output 对应每一组输入,在独立一行中输出一个正整数,表示满足条件的X的个数。 Sample Input 3 10 3 1 2 3 0
attack
2018/04/11
7920
一道网易面试编程题
一条长为n的路,需要用路灯点亮,其中"."表示需要点亮的位置,"X"表示无需点亮的位置,假设灯立在i处,则它可以点亮i-1,i,i+1三个位置,问至少需要多少灯才能点亮整条路。 乍一看,肯定是动态规划: 上代码,敲了两个小时的动态规划: #include <iostream> #include <stdio.h> #include <string> #include <string.h> using namespace std; const int INF=10000000; char a[105];
ShenduCC
2018/04/27
7920
2017广东工业大学程序设计竞赛决赛 题解&源码(A,数学解方程,B,贪心博弈,C,递归,D,水,E,贪心,面试题,F,贪心,枚举,LCA,G,dp,记忆化搜索,H,思维题)
心得: 这比赛真的是不要不要的,pending了一下午,也不知道对错,直接做过去就是了,也没有管太多! Problem A: 两只老虎 Description 来,我们先来放松下,听听儿歌,一起“唱”。 两只老虎两只老虎,跑得快跑得快。 一只没有耳朵,一只没有尾巴。 真奇怪,真奇怪。 Tmk也觉得很奇怪,因为在他面前突然出现了一群这样的老虎,有的没耳朵,有的没尾巴,不过也有正常的。 现在Tmk告诉你这群老虎的耳朵个数,尾巴条数,以及老虎的腿的数目,问你有多少只是正常的。 其中只有三种老虎: 第一种(正常的)
Angel_Kitty
2018/04/08
8960
刘强东刚入局,为何互联网大佬们爱上了养猪?
继几年前网易丁磊宣布养猪计划之后,今年阿里巴巴马云在3月的深圳云栖大会上签约了阿里云和四川特驱集团合作的“世界首创的AI养猪”项目。而11月20日,京东在JDD-2018京东数字科技全球探索者大会上,发布了京东农牧智能养殖解决方案。大佬们一个个的,都要去养猪了吗?
老九君
2018/12/27
4550
刘强东刚入局,为何互联网大佬们爱上了养猪?
hdu 3221 Brute-force Algorithm(高速幂取模,矩阵高速幂求fib)
大家好,又见面了,我是全栈君。 http://acm.hdu.edu.cn/showproblem.php?pid=3221 一晚上搞出来这么一道题。。Mark。 给出这么一个程序。问funny函数调
全栈程序员站长
2022/01/24
4590
【HDU 4311】Meeting point-1(前缀和求曼哈顿距离和)
给定n个点的坐标,找一个点,到其他点的曼哈顿距离之和最小。 n可以是100000。 大概要一个O(nlogn)的算法。 算曼哈顿距离可以把x和y分开计算排好序后计算前缀和就可以在O(1)时间内判断一个点到其他点的距离。
饶文津
2020/06/02
5440
【HDU 4925】BUPT 2015 newbie practice #2 div2-C-HDU 4925 Apple Tree
http://acm.hust.edu.cn/vjudge/contest/view.action?cid=102419#problem/C Description I’ve bought an or
饶文津
2020/05/31
3630
HDU 5652 India and China Origins(并查集)
India and China Origins Time Limit: 2000/2000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 441    Accepted Submission(s): 133 Problem Description A long time ago there are no himalayas between India and China, the
ShenduCC
2018/04/26
6480
HDU 5652 India and China Origins(并查集)
【HDU-6146】Pokémon GO(dp)
百度之星2017复赛1003 HDU-6146 Pokémon GO 题意 两行n列,只能到相邻格子,可以斜着。求遍历的方案数。 题解 image.png 代码 #include <bits/stdc++.h> #define mem(a,b) memset(a,b,sizeof(a)) #define ll long long #define N 10005 const ll M = 1e9+7; using namespace std; int t,n; ll dp[N];//start from x
饶文津
2020/06/02
3930
【HDU-6146】Pokémon GO(dp)
HDU4870:Rating(DP)「建议收藏」
大家好,又见面了,我是全栈君 Problem Description A little girl loves programming competition very much. Recently, she has found a new kind of programming competition named “TopTopTopCoder”. Every user who has registered in “TopTopTopCoder” system will have a r
全栈程序员站长
2022/07/06
2610
【HDU - 4342】History repeat itself(数学)
BUPT2017 wintertraining(15) #8C 题意 image.png 题解 image.png 代码 #include <cstdio> #include <cmath> #define ll long long int t; const int N=1LL<<16; ll n,x,ans,a[N]; int main(){ for(int i=1;i<=N;i++) a[i]=a[i-1]+(ll)(i*2+1)*i; scanf("%d", &t); while(t--
饶文津
2020/06/02
3830
【HDU - 4342】History repeat itself(数学)
推荐阅读
相关推荐
【Gym 100733D】Little thief Shi(取数,DP)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验