9273:PKU2506Tiling

来源:http://noi.openjudge.cn/ch0202/9273/

总时间限制:2000ms  单个测试点时间限制:1000ms
内存限制:131072kB
描述
    对于一个2行N列的走道。现在用1*2,2*2的砖去铺满。问有多少种不同的方式。
    下图是一个2行17列的走道的某种铺法。

输入
    整个测试有多组数据,请做到文件底结束。每行给出一个数字N,0 <= n <= 250
输出
    如题
样例输入
    2
    8
    12
    100
    200
样例输出
    3
    171
    2731
    845100400152152934331135470251
    1071292029505993517027974728227441735014801995855195223534251

分析:
f[n] = f[n-1] + f[n-2]*2 ;

使用这个递推公式,再加上高精度计算即可。

综合了高精度、递推,而且高精度的运用比较熟悉、巧妙。

代码来源:http://blog.csdn.net/c20180630/article/details/52329721

     #include<iostream>
#include<cstdio>
using namespace std;
int a[][]; //a[i]用来存储一个大整数,其中a[i][0]存储长度,真实数据倒序存储。
int max(int x,int y){return x>y?x:y;}
int main()
{
a[][]=;
a[][]=;
a[][]=;
a[][]=;
for(int i=;i<=;i++){
for(int j=;j<=max(a[i-][],a[i-][]);j++)
a[i][j]=a[i-][j]+a[i-][j]*; //高精度加法(按位加的操作)
a[i][]=max(a[i-][],a[i-][]);
for(int j=;j<=a[i][];j++){ //高精度加法的进位
a[i][j+]+=a[i][j]/;
a[i][j]%=;
}
while(a[i][a[i][]+]){ //更新高精度加法结果的位数
a[i][]++;
a[i][a[i][]+]+=a[i][a[i][]]/;
}
}
int n;
while(cin>>n){
if(n==)
cout<<<<endl;
else{
for(int i=a[n][];i>=;i--)
cout<<a[n][i];
cout<<endl;
}
}
}

9273:PKU2506Tiling的更多相关文章

  1. 递归--练习11--noi9273 PKU2506Tiling

    递归--练习11--noi9273 PKU2506Tiling 一.心得 25 a[i]%=10;(高精度时) 26 这里错了,花了好久改好 27 28 29 int* f(int n){ 30 if ...

  2. 投入OJ的怀抱~~~~~~~~~~

    OpenJudge C20182024 信箱(1) 账号 修改设定 退出小组 管理员 frank 林舒 Dzx someone 李文新 公告 11-05 程序设计与算法(大学先修课) 成员(61910 ...

  3. SQL Server 随机数,随机区间,随机抽取数据rand(),floor(),ceiling(),round(),newid()函数等

    在查询分析器中执行:select rand(),可以看到结果会是类似于这样的随机小数:0.36361513486289558,像这样的小数在实际应用中用得不多,一般要取随机数都会取随机整数.那就看下面 ...

  4. docker核心原理

    容器概念. docker是一种容器,应用沙箱机制实现虚拟化.能在一台宿主机里面独立多个虚拟环境,互不影响.在这个容器里面可以运行着我饿们的业务,输入输出.可以和宿主机交互. 使用方法. 拉取镜像 do ...

  5. SQL中随机数函数rand()简介

    转自:http://database.51cto.com/art/201009/224397.htm 下文将为您介绍SQL中的随机函数rand(),供您参考,如果您是才接触SQL Server的新手, ...

  6. MATLAB处理信号得到频谱、相谱、功率谱

    (此帖引至网络资源,仅供参考学习)第一:频谱 一.调用方法 X=FFT(x):X=FFT(x,N):x=IFFT(X);x=IFFT(X,N) 用MATLAB进行谱分析时注意: (1)函数FFT返回值 ...

  7. ASP.NET MVC系列:为已有模型添加新的属性

    在模型类Movie中添加一个新的属性Rating

  8. 30天,O2O速成攻略【7.18广州站】

    活动概况 时间:2015年07月18日13:30-16:30 地点:贝塔咖啡(新港中路TIT创意园内创意西路07号楼) 主办:APICloud.七牛.洪海网络 网址:www.apicloud.com ...

  9. Matlab基础

    基本运算: 一,矩阵的生成 clc ; clear all; close all; 1.直接输入 A = [ 1 ,2 ,3,4;2,3,4,5;3,4,5,6] A = 1 2 3 4 2 3 4 ...

随机推荐

  1. [转]php的public、protected、private三种访问控制模式的区别

    FROM : http://blog.163.com/weiwenjuan_bj/blog/static/14035033620129304183850/?suggestedreading publi ...

  2. Windows Server 2012上安装.NET Framework 3.5(不需要安装光盘)

    因为在windows2012里,安装数据库,IIS部分组件都需要.NET3.5,而默认windows2012安装时,并不会把此组件复制到电脑里 导致,后期要安装.NET3.5还需要安装盘.但是,很多人 ...

  3. 8Manage PMP 项目管理工具

    范围与需求管理 8Manage 项目管理平台提供先进的机制集中管理项目的范围与需求: 提供需求申请功能:获取,过滤,解析和明确项目的需求 提供需求矩阵功能:整理分析需求并跟踪需求从开始到完成的整个过程 ...

  4. Direct I/O,Synchronous I/O的概念

    Direct I/O概念: Direct I/O is a way to avoid entire caching layer in the kernel and send the I/O direc ...

  5. CSS-页面滑屏滚动原理

    现在的网站有的时候为了简洁就是很多的单页滑屏滚动介绍,主要呈现方式有两种,一种是整体的元素一直排列下去,假设有五个需要展示的全屏页面,那么高度是500%,只是展示100%,剩下的可以通过transfo ...

  6. Ios开发之Category

    Category是在不改变已存在类的情况下,对其添加方法来达到对类进行功能扩展的目的. 对类功能进行拓展的时候,我们会有多种方式,比如说可以通过继承也可以进行功能扩展,但是在Category和继承上我 ...

  7. android动手写控件系列——老猪叫你写相机

    前记:Android这个开源而自由的系统,为我们带来开发便利,同时也埋下太多的深坑.例如调用系统自带的相机就会出现照片丢失,或者其他各种各样的问题.因此,看来自定义一个相机十分的必要. 要自定义相机我 ...

  8. ICTCLAS中的HMM人名识别

    http://www.hankcs.com/nlp/segment/ictclas-the-hmm-name-recognition.html 本文主要从代码的角度分析标注过程中的细节,理论谁都能说, ...

  9. 关于 redis 报错 :JsonParseException: Unrecognized token 'xxx': was expecting ('true', 'false' or 'null')

    在使用java  读取redis存储的数据时出现 JsonParseException: Unrecognized token 'xiaoqiang': was expecting ('true', ...

  10. ESXI安装时卡在loading ipmi_si_drv的解决方案

    参考:http://x220ak.hatenablog.com/ 在这个界面按下shift+O,输入runweasel noipmiEnabled即可跳过loading ipmi_si_drv的加载