/*
一开始认为是个水题 直接模拟
没想到只得了50分 一看数据吓niao了
模拟妥妥的TLE
实在不好优化了0.0(最快O(m))
然后借鉴别人的 DP+神奇的输出
DP:状态:f[i][j] 前i个字符出现j次1的数字个数
很容易想到 如果i是1 f[i][j]=f[i][j]+f[i-1][j-1]
如果i是0 f[i][j]=f[i][j]+f[i-1][j]
初始化 i==0||j==0时 个数为1
然后就是神奇的输出了0.0
看代码吧
*/ /*
TLE 50
模拟
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
int n,l,m,num;
int main()
{
cin>>n>>l>>m;
int s=(<<n-)-;
for(int i=;i<=s;i++)
{
int li=,x=i,y;
while(x>)
{
y=x%;
x=x/;
if(y==)li++;
}
if(li<=l)num++;
if(num==m)
{
int a[]={},li=;
while(i>)
{
a[++li]=i%;
i=i/;
}
for(int j=n;j>=;j--)
cout<<a[j];
return ;
}
}
}
/*
AC 100
DP
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
ll f[][],n,l,m;
int main()
{
ll i,j;
cin>>n>>l>>m;
for(i=;i<=n;i++)f[i][]=;
for(i=;i<=l;i++)f[][i]=;
for(i=;i<=n;i++)
for(j=;j<=l;j++)
f[i][j]=f[i-][j]+f[i-][j-];
m--;//减掉0的一种情况
for(i=n;i>=;i--)//枚举位置
if(m&&f[i-][l]<=m)//输出1的条件:前i-1位中含‘剩余’l的数字个数不超过m并且m>=1
{
cout<<;
m=m-f[i-][l];//与‘目标’还差几
l--;//‘剩余’l的数字个数
}
else cout<<;
return ;
}

codevs2034 01串2的更多相关文章

  1. JZOJ P1847:找01串

    传送门 DP预处理+贪心 首先设$f[i][j]$表示长度为$i$的01串中有不大于$j$个1,然后显然 $f[i][j]=\sum_{k=1} ^{j} C[i][k]$ $C[i][j]=C[i- ...

  2. 洛谷P2727 01串 Stringsobits

    P2727 01串 Stringsobits 24通过 55提交 题目提供者该用户不存在 标签USACO 难度普及+/提高 提交  讨论  题解 最新讨论 这题的思路是啥啊!!!跪求- 题目背景 考虑 ...

  3. C++实现01串排序

    题目内容:将01串首先按长度排序,长度相同时,按1的个数从少到多进行排序,1的个数相同时再按ASCII码值排序. 输入描述:输入数据中含有一些01串,01串的长度不大于256个字符. 输出描述:重新排 ...

  4. 01串(dp)

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

  5. 【巧妙】【3-21个人赛】Problem C 01串

    Problem C Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Sub ...

  6. NYOJ-252 01串

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

  7. NYOJ 252 01串(斐波那契数列变形)

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

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

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

  9. 1415: 小ho的01串 [字符串]

    点击打开链接 1415: 小ho的01串 [字符串] 题目描述 有一个由0和1组成的字符串,它好长呀--------一望无际 恩,说正题,小ho的数学不太好,虽然是学计算机的但是看见0和1也是很头疼的 ...

随机推荐

  1. wndows常用命令

    1. 远程桌面 mstsc (Microsoft terminal services client)

  2. S5PV210开发板刷机(SD卡uboot、串口+USB-OTG刷机方法)

    一.介绍 九鼎的S5PV210开发板,在出厂前已经默认刷了Android4.0系统.如果需要刷其它的系统或者是由于系统问题无法启动时,就需要对板子刷机. 其实,刷机是对210开发板的一个基础学习,目的 ...

  3. bzoj2127: happiness

    Description 高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而一对好朋友 ...

  4. bzoj2260: 商店购物 && 4349: 最小树形图

    Description Grant是一个个体户老板,他经营的小店因为其丰富的优惠方案深受附近居民的青睐,生意红火.小店的优惠方案十分简单有趣.Grant规定:在一次消费过程中,如果您在本店购买了精制油 ...

  5. windows下搭建PHP环境

    1.Apache 下载地址:http://httpd.apache.org/download.cgi 下载之后进入CMD,/Apache/bin/httpd.exe -k install 进行安装 提 ...

  6. 最好用的手机编程软件-C4droid

    Q:c4droid是什么? A:c4droid(以下简称c4)是安卓平台上最强大的c/c++ 编译器,你可以在手机上用手机编写自己的C/C++程序,并且可以把程序导出成apk文件. 下载地址:http ...

  7. mysql 修改max_allowed_packet

    -- 查询max_allowed_packetshow VARIABLES like '%max_allowed_packet%'; 修改 my.ini 或 my.cnf [mysqld] max_a ...

  8. YII 主题

    heming是一个在Web应用程序里定制网页外观的系统方式.通过采用一个新的主题,网页应用程序的整体外观可以立即和戏剧性的改变. 在Yii,每个主题由一个目录代表,包含view文件,layout文件和 ...

  9. War3Tool dota改键v3.3版

    wartool魔兽全屏改键功能:1.支持11平台自定义改建,自动进局域网(同类软件暂时没发现这个功能)2.技能改键,可以有效的切换适合你的技能键3.war3路径扫描,运行本程序一键就能打开war3 ( ...

  10. BZOJ1726: [Usaco2006 Nov]Roadblocks第二短路

    1726: [Usaco2006 Nov]Roadblocks第二短路 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 768  Solved: 369[S ...