一,看题目

1,这个虽然我不想说,但是我确实不会,但是我的意思是你可以不会但是不能每次都不会那咋办?

二,看题解

1,你得大概知道这个东西是考啥的(虽然这个东西提前给你说了是d递归),但是考试肯定没人给你提示,你得看出来,其实递归题还是挺好看出来的。

2,如果看出来是递归题目,那么就我所了解的,一般核心都是斐波那契数列,你看这题说实话就和斐波那契很像,就是改了一点来考你罢了。

3,比较重要的是推公式,初始推断很重要,一开始第一年的话我也觉得是有两头母牛,但是就全错了。一定要从样例中看看数据。

4,反正最后的公式是f[n]=f[n-1]+f[n-3];

三,写题。

本以为可以一发入魂,但我还是t太naive。

竟然内存超过限制。。我真是。。

于是。。搜索内存超过限制势必记忆化搜索啊!

于是在此复习下记忆化

其实记忆化关键是最后一步

 #include<iostream>
using namespace std;
int m[];
int f(int x)
{
if(m[x]) return m[x];
if(x==) return m[]=;
if(x==) return m[]=;
if(x==) return m[]=;
if(x==) return m[]=;
if(x>=&&x<=) m[x]=f(x-)+f(x-);//这里是记忆化的关键 return m[x];and 这里 }
int main(){ int x; while(cin>>x&&x!=)//这里也有关键,之前我写成了if(cin>>x&&x!=0),但是这样的话你其实只能处理上一个数据的..
{
int ans=f(x);
cout<<ans<<endl; }
return ;
}

1,写题中第一个是记忆化的使用。

2,第二个是这种测试数据个数没说的需要用while循环的。

贴下代码

Ql004(母牛的故事)的更多相关文章

  1. HDOJ2018母牛的故事

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

  2. ACM YTU 2018 母牛的故事

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

  3. 函数递归简单题-hdoj-2044 2018-一只小蜜蜂 母牛的故事

    题目:一只小蜜蜂 递归做法: #include<cstdio> #include<iostream> #include<stdlib.h> #include< ...

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

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

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

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

  6. HDU 2018 母牛的故事 [补]

    今天刚考完试,和杨曙光玩了RPG,实在不想看题了 /***************************************************/ 母牛的故事 Time Limit: 200 ...

  7. HDU dp递推 母牛的故事 *

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

  8. 1004: [递归]母牛的故事(python):(本地测试正确;但提交不对!!??)求教

    时间限制: 1Sec 内存限制: 128MB 提交: 28438 解决: 8320 题目描述 有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.请编程实现在第n年 ...

  9. HDOJ 2018 母牛的故事

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

随机推荐

  1. Scala 定义复杂枚举

    通常我们需要枚举参数不止两个,Scala提供的枚举类最多定义两个参数:id:Int与name:String.不能满足我们通常要求. object BaseEntryEnum extends Enume ...

  2. zipfile

    zipfile是一个用于处理zip压缩格式的文件的模块, 主要会用到它的ZipFile类 import zipfile zipfile.is_zipfile('myzip.zip')) # 判断一个文 ...

  3. jenkins 更新插件使用代理

    方法一: 管理插件页面配置如下: 这个 URL 改成http://mirror.xmission.com/jenkins/updates/update-center.json 或https://mir ...

  4. 在Windows操作系统的文件管理器中集成Azure DevOps Server (TFS)工具菜单

    故事场景 使用过SVN的用户,都知道在Windows的文件夹上点击鼠标右键,就会弹出Tortoise SVN的操作菜单(俗称小乌龟).通过这个功能,用户不需要打开SVN工具,可以直接在Windows的 ...

  5. Asp.Net、API 、MVC、 PUT/DELETE 报405错解决办法

    本地put/delete能正常运行,但是部署在服务器就 报webapi method not allowed 405的错误 解决方案就是在Web.config里面加入如下设置: <system. ...

  6. StuQ技能图谱

  7. CTS,CLS,CLR解释

    问题阐述 CTS.CLS和 CLR分别是什么意思? 专家解答 CTS.CLS和 CLR是.NET框架的 3个核心部分,下面分别对它们进行介绍. (1)CTS CTS即通用类型系统,它定义了如何在.NE ...

  8. React学习之路之创建项目

    React 开发环境准备 IDE工具 visual studio code 开发环境 开发环境需要安装nodejs和npm,nodejs工具包含了npm. nodejs下载官网:https://nod ...

  9. go 中string[0]到底是rune还是byte?

    好像没区别,对吧? 来看个全面的对比: package main import ( "fmt" "reflect") func main(){ asci:=&q ...

  10. 将Python源程序打包成可独立执行的文件

    有时候需要将编写好的脚本发送给别人,但是在没有安装运行环境或依赖库的情况下,Python脚本程序无法执行.PyInstaller工具可以快速的将python脚本打包成一个二进制可执行的exe程序,并且 ...