hdu2045 不容易系列之(3)—— LELE的RPG难题 (动态规划)

来源:互联网 发布:淘宝店铺正在被处罚 编辑:程序博客网 时间:2024/05/21 09:51

不容易系列之(3)—— LELE的RPG难题

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 37161    Accepted Submission(s): 14947


Problem Description
人称“AC女之杀手”的超级偶像LELE最近忽然玩起了深沉,这可急坏了众多“Cole”(LELE的粉丝,即"可乐"),经过多方打探,某资深Cole终于知道了原因,原来,LELE最近研究起了著名的RPG难题:

有排成一行的n个方格,用红(Red)、粉(Pink)、绿(Green)三色涂每个格子,每格涂一色,要求任何相邻的方格不能同色,且首尾两格也不同色.求全部的满足要求的涂法.

以上就是著名的RPG难题.

如果你是Cole,我想你一定会想尽办法帮助LELE解决这个问题的;如果不是,看在众多漂亮的痛不欲生的Cole女的面子上,你也不会袖手旁观吧?

 

Input
输入数据包含多个测试实例,每个测试实例占一行,由一个整数N组成,(0<n<=50)。
 

Output
对于每个测试实例,请输出全部的满足要求的涂法,每个实例的输出占一行。
 

Sample Input
12
 

Sample Output
36
 

Author
lcy
 

Source
递推求解专题练习(For Beginner)
 

Recommend
lcy   |   We have carefully selected several similar problems for you:  1297 1465 2190 2501 1480 
 


解析:f[i] 表示 i 个方格的合法数量,则:

           f[i]       =              f[i-1]                          +                                2*f[i-2]

               前i-1个方格是合法的,1与i-1颜色不同                   前i-2个方格是合法的,1与i-1颜色相同     

代码:

#include<cstdio>using namespace std;typedef long long LL;const int maxn=50;LL f[maxn+10];int main(){  int n,i,j,k;  f[1]=3,f[2]=6,f[3]=6;  for(i=4;i<=50;i++)f[i]=f[i-1]+f[i-2]*2;    while(scanf("%d",&n)!=EOF)printf("%I64d\n",f[n]);  return 0;}


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 经常嗓子发炎抵抗力低下怎么办 生完孩子出虚汗怎么办 3岁宝宝抵抗力差怎么办 5岁宝宝免疫力低怎么办 狗狗后腿o型怎么办 狗狗前腿内八字怎么办 小猫腿摔瘸了怎么办会好吗 小狗的腿断了怎么办 狗后腿摔瘸了怎么办 狗狗脖子挠破了怎么办 狗狗脖子挠破化脓怎么办 狗狗大腿骨折了怎么办啊 狗狗洗澡后拉稀怎么办 狗狗好像生病了怎么办 奶狗前腿断了怎么办 狗摔了一下瘸了怎么办 小狗腿突然瘸了怎么办 狗腿突然瘸了怎么办 狗腿受伤了肿了怎么办 狗狗缺钙腿变形怎么办 小狗腿摔骨折了怎么办 狗狗脚掌被压了怎么办 狗狗的脚骨折了怎么办 给猫灌药水呛到怎么办 吃佐匹克隆白天工作量降低怎么办? 手机网页不显示图片怎么办啊 页眉页脚同前节怎么办 小米8后盖缝隙大怎么办 狗子生了一个不动的小狗怎么办 狗狗肚子有脓包怎么办 小孩幼儿园数学不开窍怎么办 老百姓打仗了报警派出所不管怎么办 和人打架报案了怎么办 皇上死后的妃子怎么办 武警改制警卫系的学员怎么办 正团病故后住房怎么办 遇到保姆式领导该怎么办 限购房子卖不了怎么办 斑马线礼让行人行人不走怎么办 中国留学生签证在美国被取消怎么办 建行卡网银帐号密码输入错误怎么办