252-01串

内存限制:64MB 时间限制:1000ms 特判: No
通过数:33 提交数:49 难度:2

题目描述:

ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有“11”子串的这种长度的01串共有多少个,他希望你能帮帮他。

注:01串的长度为2时,有3种:00,01,10。

输入描述:

第一行有一个整数n(0<n<=100),表示有n组测试数据;
随后有n行,每行有一个整数m(2<=m<=40),表示01串的长度;

输出描述:

输出不含有“11”子串的这种长度的01串共有多少个,占一行。

样例输入:

2
2
3

样例输出:

3
5
#include<cstring>
#include<algorithm>
#include<stdio.h>
#include<iostream>
#define ll long long
#define inf 0x3f3f3f3f
using namespace std; ll dp[][];///dp[i][j]表示第i位,以j开头的 符合条件的 01串有多少个 int main()
{
memset(dp,,sizeof(dp));
dp[][]=dp[][]=;
dp[][]=;
dp[][]=;
for(int i=;i<=;i++)
{
dp[i][]=dp[i-][]+dp[i-][];///以0开头后面什么都能加
dp[i][]=dp[i-][];///以1开头需要i-1位是0,往后的位的可能都包含在i-1位里,不用再加
}
int t,n;
cin>>t;
while(t--)
{
cin>>n;
printf("%lld\n",dp[n][]+dp[n][]);
}
return ;
}
/*
0
1 00
01
10
11 000
001
010
011
100
101
110
111
*/

NYOJ252-01串-(数位dp)的更多相关文章

  1. 01串(dp)

    01串 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有“11”子串的这种长度的01串共有多少个, ...

  2. COGS 862. 二进制数01串【dp+经典二分+字符串】

    862. 二进制数01串 ★   输入文件:kimbits.in   输出文件:kimbits.out   简单对比 时间限制:1 s   内存限制:128 MB USACO/kimbits(译 by ...

  3. NYOJ-252 01串

    01串 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描写叙述 ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有"11"子串的这样的长 ...

  4. NYOJ 252 01串 普通dp

    题目链接: http://acm.nyist.edu.cn/JudgeOnline/problem.php?pid=252 分析: dp[2][0]=2;//表示长度为2的满足要求的且以0结尾的串个数 ...

  5. 【20181031T2】几串字符【数位DP思想+组合数】

    题面 [错解] 一眼数位DP 设\(f(i,c00,c01,c10,c11)\)-- 神tm DP 哎好像每两位就一定对应c中的一个,那不用记完 所以可以设\(f(i,c00,c01,c10)\)-- ...

  6. 51nod 1391 01串(hash+DP)

    题目链接题意:给定一个01串S,求出它的一个尽可能长的子串S[i..j],满足存在一个位置i<=x <=j, S[i..x]中0比1多,而S[x + 1..j]中1比0多.求满足条件的最长 ...

  7. 数位dp(二进制01问题)

    http://poj.org/problem?id=3252 题意:给你一个区间,求区间有多少个满足条件的数.条件是:把该数转为二进制后,如果0的数量大于等于1的数量,则为满足条件的数量. 题解:数位 ...

  8. 【HDU3530】 [Sdoi2014]数数 (AC自动机+数位DP)

    3530: [Sdoi2014]数数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 682  Solved: 364 Description 我们称一 ...

  9. BZOJ3530:[SDOI2014]数数(AC自动机,数位DP)

    Description 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3 ...

随机推荐

  1. ecmall 后台添加新菜单

    所谓的开发新菜单,其实是和开发模块相对比的,之前说的开发模块,是在应对较大的,或者较为复杂,又相对独立于其他功能的项目需求. 而开发菜单,就是简单的在后台增加一个一级菜单以及其子菜单,或者直接在现有的 ...

  2. Java多线程入门中几个常用的方法

    一.currentThread()方法 currentThread方法就是返回当前被调用的线程. 该方法为一个本地方法,原码如下: /** * Returns a reference to the c ...

  3. Atom+latex+中文环境

    最近在写论文,的路上.很多idea都受限于官方给的模板不能够添加自己即时的中文idea,所以添加中文到文献中很有必要,这里记录自己添加中文的几个小步骤 1. 受限将atom中的latex packag ...

  4. centos安装tomcat步骤

    1.官网或wget下载apache-tomcat-8.5.9.tar.gz: cd /home/tar wget xxxxxxxxxx cp /home/tar/apache-tomcat-8.5.9 ...

  5. python------面向对象进阶反射详解(重点)

    一.反射 通过字符串映射或者修改程序运行时的状态,属性,或者方法. 1.getattr(object,name,default=None) 2.hasattr(object,name) 3.setat ...

  6. Android related

    The build env. ensure that your computer’s BIOS is set up to support Intel’s virtualization extensio ...

  7. Vue 中使用 viewerjs

    安装 viewerjs npm install viewerjs --save 创建一个 Viewer.vue 组件 <template> <div id="index&q ...

  8. redis 的备份策略,最好使用:RDB-AOF 混合持久化

    相关资料: Redis 4.0 新功能简介:RDB-AOF 混合持久化:http://blog.huangz.me/2017/redis-rdb-aof-mixed-persistence.html ...

  9. 第3章 Vim使用笔记

    3.1 vi使用map自定义快捷方式 [想要永久保存定义的快捷键在-/.vimrc[进入root后才能看到~/.vimrc文件]中编辑保存即可!] set nu 输入下列命令[:map <spe ...

  10. Java_框架面试题

    Java_框架面试题 欢迎来我Git上分享您的优秀建议 1.Spring框架分为哪七大模块,各模块的主要功能作用是什么? 七大模块,如下: 1. Spring Core: Core封装包是框架的最基础 ...