<每日一题> Day5:简单递推两题
参考代码:
#include <iostream>
using namespace std; typedef long long ll;
const ll maxn = + ;
ll dp[maxn]; int main() {
ll t, a, b, now;
dp[] = ;
dp[] = ;
for(int i = ; i <= maxn; i ++) {
dp[i] = dp[i - ] + dp[i - ];
}
cin >> t;
while(t --) {
cin >> a >> b;
now = b - a + ;
cout << dp[now] << endl;
}
return ;
}
参考代码:
/*
递推思想,很容易可以手推出3种情况,我们可以确定的是,在放第涂第n个格子的时候前n - 1个格子已经涂完了,所以对于第n个格子,我们分为以下两种情况
<1>:前n - 1个格子已经涂完了,涂的方法有dp[n - 1]种,我们确定第n - 1和第n个不同色,并且要求第n个和第一个不同色,所以第n个只有一种图法,乘法规律我们知道在确定前n - 1种格子的涂法时第n个有dp[n - 1]种图法。
<2>:前n - 2个格子已经涂完了,涂的方法有dp[n - 2]种,这时我们知道,第n - 1个格子的颜色肯定是与第一个格子相同的,因为如果他们不同,则第n个格子又只有一种图法,和情况一是一样的,第n个格子我们有两种图法,所以由乘法规律的在提前确定n - 2个格子的涂法时第n个格子有2 * dp[n - 2]种涂法。
*/
#include <cstdio>
using namespace std; typedef long long ll;
const int maxn = + ;
ll dp[maxn]; int main() {
int n;
dp[] = ;
dp[] = ;
dp[] = ;
for(int i = ; i <= maxn; i ++) {
dp[i] = dp[i - ] + * dp[i - ];
}
while(~scanf("%d", &n)) {
printf("%lld\n", dp[n]);
}
return ;
}
<每日一题> Day5:简单递推两题的更多相关文章
- HDU 2085 核反应堆 --- 简单递推
HDU 2085 核反应堆 /* HDU 2085 核反应堆 --- 简单递推 */ #include <cstdio> ; long long a[N], b[N]; //a表示高能质点 ...
- 【第53套模拟题】【递推】【RMQ】【二进制】【分块】
题目:(开始自己描述题目了...) 第一题大意: 求1~n的所有排列中逆序对为k个的方案数,输出方案数%10000,n<=1000. 解:这道题一个递推,因为我基本上没怎么自己做过递推,所以推了 ...
- 简单递推 HDU-2108
要成为一个ACMer,就是要不断学习,不断刷题...最近写了一些递推,发现递推规律还是挺明显的,最简单的斐波那契函数(爬楼梯问题),这个大家应该都会,看一点稍微进阶了一点的,不是简单的v[i] = v ...
- dp的简单递推笔记1
(1)转自rockZ的博文 UVa 10328 - Coin Toss (递推) 题意:给你一个硬币,抛掷n次,问出现连续至少k个正面向上的情况有多少种. 原题中问出现连续至少k个H的情况,很难下手. ...
- 计蒜客 28319.Interesting Integers-类似斐波那契数列-递推思维题 (Benelux Algorithm Programming Contest 2014 Final ACM-ICPC Asia Training League 暑假第一阶段第二场 I)
I. Interesting Integers 传送门 应该是叫思维题吧,反正敲一下脑壳才知道自己哪里写错了.要敢于暴力. 这个题的题意就是给你一个数,让你逆推出递推的最开始的两个数(假设一开始的两个 ...
- UVA10943简单递推
题意: 给你两个数字n,k,意思是用k个不大于n的数字组合(相加和)为n一共有多少种方法? 思路: 比较简单的递推题目,d[i][j]表示用了i个数字的和为j一共有多少种情况,则 ...
- Flags-Ural1225简单递推
Time limit: 1.0 second Memory limit: 64 MB On the Day of the Flag of Russia a shop-owner decided to ...
- hdu 1465:不容易系列之一(递推入门题)
不容易系列之一 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- FZU- Problem 1147 Tiling,递推坑题,大数水过~~
Problem 1147 Tiling Time Limit: 1000 mSec Memory Limit : 32768 KB http://acm.fzu.edu.cn/problem.php? ...
随机推荐
- Saving James Bond - Easy Version
题目来源: 浙江大学在慕课网上开设的<数据结构>课,陈越老师.何钦铭老师主讲,课后作业的一道题. 题目描述: 题目思路: 这道题目本质上讲就是列出图的连通集,但是这个连通集的起点是有约束的 ...
- 题解 P1587 【[NOI2016]循环之美】
知识点:莫比乌斯反演 积性函数 杜教筛 废话前言: 我是古明地恋,写这篇题解的人已经被我 请各位读者自行无视搞事的恋恋带有删除线的内容,谢谢茄子. 这道题目本身并不难,但是公式推导/代码过程中具有迷惑 ...
- vscode-函数注释插件-正则插件
1.安装插件KoroFileHeader(函数标准注释) 2.设置 在vscode左下角点击设置按钮,选择“设置”,然后输入“fileheader”, 文件头部注释:Fileheader:custom ...
- Python---协程---重写多进程
一. # 匹配一行文字中所有开头的字母import re s = 'i love you but you don\'t love me' # \b\m findallcontent = re.find ...
- mybatis时间范围查询
<if test="excStartTime!=null and excStartTime!=''"> <![CDATA[ and DATE_FORMAT(dl. ...
- Leetcode 12. Integer to Roman(打表,水)
12. Integer to Roman Medium Roman numerals are represented by seven different symbols: I, V, X, L, C ...
- win php composer安装
composer安装文件下载 https://getcomposer.org/Composer-Setup.exe composer安装: 选择php.exe D:\phpStudy\php55n\p ...
- echarts曲线图
drawLeftLine(){ let drawLine = echarts.init(document.getElementById('data-left-middle-table-wrap')); ...
- win10文件夹不自动刷新的解决方案
win10文件夹不自动刷新的解决方案 https://jingyan.baidu.com/article/d7130635d45a5013fcf47544.html
- SQL Server系列之 删除大量数据
一.写在前面 - 想说爱你不容易 为了升级数据库至SQL Server 2008 R2,拿了一台现有的PC做测试,数据库从正式库Restore(3个数据库大小夸张地达到100G+),而机器内存只有可怜 ...