dp果然不是好学的。。。

第n个,即2*n时,可由第n-1个的竖直排列再加一个,和第n-2个中横着排两个

所以f(n) = 1×f(n-1) + 1×f(n-2);

骨牌铺方格

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Total Submission(s): 28412    Accepted Submission(s): 13771

Problem Description
在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数.

比如n=3时,为2× 3方格,骨牌的铺放方案有三种,例如以下图:

 
Input
输入数据由多行组成,每行包括一个整数n,表示该測试实例的长方形方格的规格是2×n (0<n<=50)。
 
Output
对于每一个測试实例。请输出铺放方案的总数,每一个实例的输出占一行。
 
Sample Input
1
3
2
 
Sample Output
1
3
2
 
Author
lcy
 

代码:

#include<stdio.h>
__int64 ans[55] = {1, 1};
void f()
{
for(int i = 2; i <54; i ++)
ans[i] = ans[i-1]+ans[i-2];
}
int main()
{
f();
int n;
while(scanf("%d", &n) == 1){
printf("%I64d\n", ans[n]);
}
}



hdoj 2046 骨牌铺方格 【DP】+【斐波那契】的更多相关文章

  1. hdoj 2046 骨牌铺方格

    骨牌铺方格 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  2. Hdoj 2046.骨牌铺方格 题解

    Problem Description 在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数. 例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图: Inpu ...

  3. Xorequ(BZOJ3329+数位DP+斐波那契数列)

    题目链接 传送门 思路 由\(a\bigoplus b=c\rightarrow a=c\bigoplus b\)得原式可化为\(x\bigoplus 2x=3x\). 又异或是不进位加法,且\(2x ...

  4. hdu 2046 骨牌铺方格

    #include<stdio.h> int main(void) { long long i,n,narr[55]; narr[1]=1;narr[2]=2;narr[3]=3; for( ...

  5. 杭电-------2046骨牌铺方格(C语言写)

    #include<stdio.h> ] = { }; long long recrusion(int n) { || a[n]>) { return a[n]; } ) + recr ...

  6. hdoj 2044一只小蜜蜂...【斐波那契变形】

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  7. HD2046骨牌铺方格

    骨牌铺方格 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  8. hihoCoder #1143 : 骨牌覆盖问题·一 (斐波那契数列)

    题意:我们有一个2xN的长条形棋盘,然后用1x2的骨牌去覆盖整个棋盘.对于这个棋盘,一共有多少种不同的覆盖方法呢? 思路:这是斐波那契数列啊,f[n] = f[n-1] + f[n-2],初始时 f[ ...

  9. Ural 1225. Flags 斐波那契DP

    1225. Flags Time limit: 1.0 secondMemory limit: 64 MB On the Day of the Flag of Russia a shop-owner ...

随机推荐

  1. jqury 延迟方法

    $("button").click(function(){    $("#div1").delay("slow").fadeIn();    ...

  2. Shell获取多行输入并输出每行的第3个字符

    #!/bin/bash echo "$(cut -c3 /dev/stdin)" 标准输入的文件名是/dev/stdin,如果在cut后面输入了这个参数,那么shell会提示你输入 ...

  3. luogu P1462 通往奥格瑞玛的道路--spfa+二分答案

    P1462 通往奥格瑞玛的道路 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡 ...

  4. Linux用户和组的概念

    目 录 第1章 用户和组存在的关系    1 1.1 我们现在所使用的操作系统都是多用户操作系统    1 1.2 id命令查看当前登陆的用户信息    1 1.3 用户UID的分类    1 1.4 ...

  5. 未能加载文件或程序集“System.ServiceModel, Version=2.0.5.0, ...”解决方法

    未能加载文件或程序集“System.ServiceModel, Version=2.0.5.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”或它 ...

  6. 【04】如何确定ruby安装好

        [04]如何确定ruby安装好     命令行里输入 ruby -v 如果正确输出了 ruby 版本号,就OK了       是不是在Windows平台安装的?如果是,先按照楼上说得打开命令行 ...

  7. Codeforces Round #388 (Div. 2) A+B+C!

    A. Bachgold Problem 任何一个数都可以由1和2组成,由于n是大于等于2的,也就是可以由2和3组成.要求最多的素数即素数越小越好,很明显2越多越好,如果n为奇数则再输出一个3即可. i ...

  8. Go切片的操作

    package main import "fmt" //切片的操作 func main() { //创建slice var s []int //zero value for sli ...

  9. python学习笔记--python简介

    一.什么是python? python是一种面向对象.解释型的高级程序语言.python具有语法简洁.易于学习.功能强大,可扩展性强,跨平台等诸多特点.1989年开始开发,于1991年发布第一个公开发 ...

  10. Poj3253:Fence Repair 【贪心 堆】

    题目大意:背景大概是个资本家剥削工人剩余价值的故事....有一块木板,要把它切成几个长度,切一次的费用是这整块被切木板的长度,例如将一个长度为21的木板切成2和19两块费用为21,切成两块的长度及顺序 ...