由于长期缺乏运动,小黑发现自己的身材臃肿了许多,于是他想健身,更准确地说是减肥。
小黑买来一块圆形的毯子,把它们分成三等分,分别标上A,B,C,称之为“跳舞毯”,他的运动方式是每次都从A开始跳,每次都可以任意跳到其他块,但最后必须跳回A,且不能原地跳.为达到减肥效果,小黑每天都会坚持跳n次,有天他突然想知道当他跳n次时共几种跳法,结果想了好几天没想出来-_-
现在就请你帮帮他,算出总共有多少跳法。
Input
测试输入包含若干测试用例。每个测试用例占一行,表示n的值(1<=n<=1000)。
当n为0时输入结束。
Output
每个测试用例的输出占一行,由于跳法非常多,输出其对10000取模的结果.
Sample Input
2
3
4
0
Sample Output
2
2
6

思路:dfs+记忆化搜索

AC代码:

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define mod 10000
const int maxn=1000+2;
int d[3][maxn];
int n;
int dfs(int i,int cur){int &ans=d[i][cur];if(ans)return ans; //当i块,cur层已经计算过了,就直接返回结果就行了,否则会超时(记忆化) if(cur==n){if(i==0){ans++;ans%=mod;}return ans;}for(int j=0;j<3;j++){if(i!=j){ans+=dfs(j,cur+1);ans%=mod;}}return ans;
}
int main(){while(scanf("%d",&n)==1 && n){memset(d,0,sizeof(d));int ans=dfs(0,0);printf("%d\n",ans);}return 0;
}

HDU 2154 跳舞毯相关推荐

  1. HDU 2154 跳舞毯

    http://acm.hdu.edu.cn/showproblem.php?pid=2154 Problem Description 由于长期缺乏运动,小黑发现自己的身材臃肿了许多,于是他想健身,更准 ...

  2. HDU 2154 跳舞毯 (递推)

    Problem Description 由于长期缺乏运动,小黑发现自己的身材臃肿了许多,于是他想健身,更准确地说是减肥. 小黑买来一块圆形的毯子,把它们分成三等分,分别标上A,B,C,称之为" ...

  3. hdu 2154 跳舞毯 (DP)

    点击打开链接 dp[i]=dp[i-1]+2*dp[i-2] #include"stdio.h" int main() {__int64 dp[1005];int i;int n; ...

  4. HDU 2154:跳舞毯

    跳舞毯 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  5. 【HDU】3441 Rotation

    题意:给出A和C(1<=A,C<=10^9),所有满足B * B * K + 1 = A * A, (K >= 0)的B,构成边长为B的正方形,等角度的围绕在一个小正方形的周围.用C ...

  6. [转] HDU 题目分类

    转载来自:http://www.cppblog.com/acronix/archive/2010/09/24/127536.aspx 分类一: 基础题:1000.1001.1004.1005.1008 ...

  7. HDU题目分类啊!!!

    分类一(详细): 分类二: 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.1032.1037.1040.10 ...

  8. HDU题目分类大全【大集合】

    基础题: 1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029.  1032.1037.1040.1048.1056.105 ...

  9. HDU 5643 King's Game 打表

    King's Game 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5643 Description In order to remember hi ...

  10. 转载:Hdu 题目分类

    原址点击 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028.1029. 1032.1037.1040.1048.1056. ...

最新文章

  1. python进程共享内存_Python进程间通信之共享内存
  2. sqoop将hive导出到mysql_Sqoop hive导出到mysql[转]
  3. 在load事件中关闭窗体
  4. PyCharm 设置背景图片
  5. RDP协议详细解析(四)
  6. 随想录(十年嵌入式总结)
  7. SimpleUI 2.0 发布,采用element-ui+vue给django admin带来全新体验
  8. Django 模板标签 换行导致异常的处理 linebreaksbr
  9. MyBatis基于Java API配置
  10. java对象占用内存的说法_JAVA 中关于对象成员占用内存的说法哪个正确 (3.0分)_学小易找答案...
  11. 高中计算机会考excel试题及答案,高中计算机会考EXCEL会考练习试题
  12. 关于OpenGL游戏全屏模式的设置
  13. 电机驱动软件学习笔记——ADC采样电流、温度、按键值
  14. (转载)北上广深房价只会涨不会降
  15. 判断是否已经注册过_你的手机号码一定绑定过很多软件,我们如何查询呢?
  16. 推荐一些经典的学习书籍
  17. 《可以量化的经济学》凯恩斯主义与…
  18. 给儿子讲美国独立战争
  19. chm文件打不开的问题
  20. oracle中12560,请问Oracle错误 了,ORA-12560该如何解决?

热门文章

  1. 大学生身价不如农民工,中国高等教育是否出了什么问题?
  2. DES加密解密Delphi、C#互通
  3. 硬盘克隆 计算机更换硬盘,换硬盘数据怎么办 看一招本地磁盘对拷
  4. 均方根值、均方根误差以及标准差的区别
  5. 什么是link标签?
  6. 摄影_光圈、快门、曝光度(ISO)
  7. win7原版镜像_i3-8100装Win7没有集显驱动?驱动人生告诉你为什么
  8. cpu散片是什么意思?
  9. 【报名开启】2021年博客之星总评选,属于你的年终表彰
  10. 哲学家就餐问题之管程