码迷,mamicode.com
首页 > 其他好文 > 详细

hdu 2018 母牛的故事

时间:2017-08-23 20:03:46      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:problem   str   turn   题意   for   第一天   main   color   sizeof   

https://vjudge.net/problem/HDU-2018

题意:

rt

思路:

递推吧,首先列一个表出来

             成熟的        出生一天       。。2天    。。。3天  

第一天       1                0                         0                 0

第二天        1                1                        0                0

第三天         1                1                        1                0

第四天          1                1                        1                1

第四天           2                2                        1                1

为什么第四天的成熟的是2呢,因为第三天的时候3天的牛在四天的时候就可以生产了,所以我们在第三天的时候就要把成熟的加上三天的,这样第四天的得到的出生一天的才是正确的。记住用long long。

 

代码:         

 1 #include <stdio.h>
 2 #include <string.h>
 3 
 4 int main()
 5 {
 6     int n;
 7 
 8     while (scanf("%d",&n) == 1 && n)
 9     {
10         long long dp[4];
11 
12         memset(dp,0,sizeof(dp));
13 
14         long long ma = 1;
15 
16         for (int i = 2;i <= n;i++)
17         {
18             dp[3] = dp[2];
19             dp[2] = dp[1];
20             dp[1] = ma;
21 
22             ma += dp[3];
23             dp[3] = 0;
24         }
25 
26         for (int i = 1;i <= 2;i++)
27             ma += dp[i];
28 
29         printf("%I64d\n",ma);
30     }
31 
32     return 0;
33 }

 

hdu 2018 母牛的故事

标签:problem   str   turn   题意   for   第一天   main   color   sizeof   

原文地址:http://www.cnblogs.com/kickit/p/7419696.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!