hdu2563——统计问题
Problem Description
1、 每次仅仅能移动一格。
2、 不能向后走(如果你的目的地是“向上”,那么你能够向左走,能够向右走,也能够向上走,可是不能够向下走);
3、 走过的格子马上塌陷无法再走第二次;
求走n步不同的方案数(2种走法仅仅要有一步不一样,即被觉得是不同的方案)。
Input
接下来的C行,每行包括一个整数n (n<=20),表示要走n步。
Output
每组的输出占一行。
Sample Input
2
1
2
Sample Output
3
7
有些统计问题能够直接通过多算几步找出规律。但这个仅仅算三步就能让人吐血,所以还是得分析过程的变化规律
设f[n]为第n步的方案,a[n]为向上走的方案。b[n]为向左右走的方案
易得f[n]=a[n]+b[n];
而上一步无论是向哪里走,这一步都能够向上走。所以a[n]=a[n-1]+b[n-1]=f[n-1];
假设上一步向左走。那么这步除了向上就仅仅能向左走,所以本来b[n]=2*(a[n-1]+b[n-1])。但少了左右的一种情况,要减去b[n-1]。所以b[n]=2*a[n-1]+b[n-1];
把上面两个式子带入f[n]得
f[n]=2*(a[n-1]+b[n-1])+a[n-1]=2*f[n-1]+f[n-2];
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cstdio>
using namespace std;
int main()
{
int n,i,j,m,a[30];
scanf("%d",&n);
while(n--)
{
a[0]=3;
a[1]=7;
scanf("%d",&m);
for(i=2;i<m;++i)
a[i]=2*a[i-1]+a[i-2];
printf("%d\n",a[m-1]);
}
return 0;
}
hdu2563——统计问题的更多相关文章
- spark处理大规模语料库统计词汇
最近迷上了spark,写一个专门处理语料库生成词库的项目拿来练练手, github地址:https://github.com/LiuRoy/spark_splitter.代码实现参考wordmaker ...
- TFS 测试用例步骤数据统计
TFS系统集成了一套BI系统,基于SQL Server的Analysis Service进行实现的.通过这几年的深入使用,能够感触到这个数据数据仓库模型是多么的优秀,和微软官方提供的数据仓库示例Adv ...
- java统计字符串单词的个数
在一些项目中可能需要对一段字符串中的单词进行统计,我在这里写了一个简单的demo,有需要的同学可以拿去看一下. 本人没怎么写个播客,如果有啥说的不对的地方,你来打我啊 不说废话了直接贴代码: 实现代码 ...
- 统计iOS项目的总代码行数的方法
打开终端, 用cd命令 定位到工程所在的目录,然后调用以下命名即可把每个源代码文件行数及总数统计出来: find . "(" -name "*.m" -or - ...
- 微信小程序二维码推广统计
微信小程序可以通过生成带参数的二维码,那么这个参数是可以通过APP的页面进行监控的 这样就可以统计每个二维码的推广效果. 今天由好推二维码推出的小程序统计工具HotApp小程序统计也推出了带参数二维码 ...
- 微信小程序监控 - HotApp统计
HotApp小程序统计,第一个专业的微信第三方小程序监控统计工具 1.什么是HotApp小程序统计 HotApp小程序统计是第一个微信第三方小程序统计工具,就像做android 和 ios开发的人知道 ...
- 有关“数据统计”的一些概念 -- PV UV VV IP跳出率等
有关"数据统计"的一些概念 -- PV UV VV IP跳出率等 版权声明:本文为博主原创文章,未经博主允许不得转载. 此文是本人工作中碰到的,随时记下来的零散概念,特此整理一下. ...
- SQL统计
--按周统计SELECT TOP 10DATENAME(year,AddDate) 年,DATENAME(week,AddDate) 周,COUNT(1) 单量,SUM(total) 总金额,AVG( ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(39)-在线人数统计探讨
系列目录 基于web的网站在线统计一直处于不是很精准的状态!基本上没有一种方法可以确实的统计在线用户! Discuz!NT 在线用户功能算是做得比较好的!参考资料 他的原理大致是根据用户的操作间隔来确 ...
随机推荐
- [Other] An Overview of Arrays and Memory
One integer takes 32bit in memory, 1 byte = 8bits, therefore one integer takes 4 bytes. Now let's as ...
- [Debug] Diagnose a Slow Page Using Developer Tools
Your page is showing high CPU usage and spinning up your laptop fan, but nothing is visibly happenin ...
- Asp.net Mvc使用PagedList分页
git:https://github.com/troygoode/PagedList 1. Nuget 安装package watermark/2/text/aHR0cDovL2Jsb2cuY3Nkb ...
- EasyUI 鼠标经过 显示气泡一例
$(function(){ $('#contacts').tooltip({ position: 'bottom', content: '<c:forEach items="${rec ...
- libpointmatcher的filter
Maximum Density Filter Points are only considered for rejection if they exceed a density threshold, ...
- AVCaptureSession
AVCaptureSession用来控制来自一个输入设备(AVCaptureDeviceInput)的声音和视频,流入一个输出缓冲区(AVCaptureOutput)的过程. 建立一个AVCaptur ...
- html5 的a标签是可以拨电话的,通过其Href属性来实现
<a href="tel:18700000000">点击给我打电话吧!</a> 注: 1.<a href="tel:18750000000& ...
- c#通过URL地址从服务器上下载文件
- select * from A.B.C.D sqlserver 中 select * from .Literary_PuDong.dbo.Users
服务器名.数据库名.表拥有者(架构名).表名 服务器名(服务器IP).数据库名.表拥有者.表名 [192.168.99.66].TEST.dbo.table1[Testdb].TEST.dbo.tab ...
- fabric自动发布tomcat线上项目
现在公司的每个tomcat项目都有测试和生产两个环境,对于经常需要上线的tomcat项目,如用手工更新就非常耗费时间和人力.现用fabric开发了一个自动发布tomcat项目的脚本,该脚本已经在公司使 ...