这一道题原先是一个一个生成,一个一个加上去最后可怜的超时了。后来想到,可以先算出第i个位置为1,且有j个1可以用时有几种情况,然后判断每一个1的位置,就ok了!!

#include <iostream>

#include <cstdio>
#include <cmath>
#include <algorithm>
#include <iomanip>
using namespace std;
int ss[35],n,l;
long long  m,k=0,dp[35][35];
bool flag;
void aaa(int num,int wei);
void bbb(int sn,int sl,long long sm);
int main()
{
    //freopen("kimbits.in","r",stdin);
    //freopen("kimbits.out","w",stdout);
    cin>>n>>l>>m;
    if(m==1){
        for(int i=1;i<=n;i++)
        cout<<0;
        cout<<endl;return 0;
    }
    for(int i=1;i<=n;i++)
    {
        dp[i][1]=1;
        for(int o1=1;o1<i;o1++)
        for(int j=1;j<l&&j<=o1;j++)
        {
            dp[i][j+1]+=dp[o1][j];
        }
    }
    bbb(n,l,m-1);
    for(int kk=n;kk>=1;kk--)
      cout<<ss[kk];
    cout<<endl;
return 0;
}
void bbb(int sn,int sl,long long sm)
{
    long long k1=0;
    for(int i=1;i<=sn;i++)
    {
        long long k2=0;
        for(int j=1;j<=sl;j++)
            k2+=dp[i][j];
        if(k1+k2>=sm){
            ss[i]=1;
            if(k1+1==sm){return;}
            bbb(i-1,sl-1,sm-k1-1);
            return;
        }
        k1+=k2;
    }
}

usaco3.2.3 01串相关推荐

  1. NYOJ 252 01串 dp

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

  2. 1593: 01串(找规律)

    1593: 01串 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 325 Solved: 143 [Submit][Status][Web Board] ...

  3. 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。

    //编写人:yike //时间:2021/12/25/17:11 //问题描述 // //对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: // //00000 / ...

  4. 【无码专区5】01串(大讨论+构造)

    因为只有std,没有自我实现,所以是无码专区 主要是为了训练思维能力 solution才是dls正解,但是因为只有潦草几句,所以大部分会有我自己基于正解上面的算法实现过程,可能选择的算法跟std中dl ...

  5. 3.14 01串排序

    将01串首先按照长度排序,其次按1的个数的多少排序,最后按ASCII码排序. 输入样例: 10011111 00001101 10110101 1 0 1100 输出样例: 0 1 1100 1010 ...

  6. 【Hihocoder - offer编程练习赛93 套题题解】交错01串(贪心,暴力)方格矩阵高度(模拟)数对(STLmultiset)修整土地(网络流)

    A: 题干: 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi要将一个01串S传输给小Ho,由于S非常长,所以小Hi决定用长度为N的2个数组A = [A1, A2, ...

  7. 【nyoj - 252】 01串(简单dp)

    题干: 01串 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 输入 第一行有一个整数n(0<n<=100),表示有n组测试数据; 随后有n行,每行有一个整数m(2 ...

  8. 01串(51Nod-1391)

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

  9. 51nod-1391:01串

    1391 01串 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题  收藏  关注 给定一个01串S,求出它的一个尽可能长的子串S[i. ...

最新文章

  1. jQuery之简单的表单验证
  2. uva437The Tower of Babylon
  3. java 异常 最佳实践_关于JAVA异常处理的20个最佳实践
  4. 695.岛屿的最大面积(026)BFS
  5. java jdbc 乱码_【求助】为什么用纯java jdbc插入mysql一直乱码
  6. SVN中如何去除版本控制器
  7. 7-2 哈夫曼编码 (30 分)
  8. 征服RIA:元编程的思想
  9. 四川大学计算机学院 学术委员会,学术委员会完整列表
  10. 如何正确的卸载MATLAB7?
  11. 理解证券行业“行业分类
  12. 〖Python 数据库开发实战 - MySQL篇㉞〗- 综合案例 - 新闻管理系统数据库设计的基本属性
  13. STM STC NXP单片机 按键扫描
  14. (Linux)mongodb启用安全认证登录
  15. 文氏图解析SQL语句中JOIN操作
  16. UE官网ARPG游戏学习笔记1
  17. 停车场web项目(内含有数据库)
  18. AJAX 请求 NIDE 搭建简单服务
  19. 业务运维离不开腾讯数据库TcaplusDB事务管理
  20. 《JavaScript前端开发案例教程》------第8章事件课后练习

热门文章

  1. 小米 2019校园招聘软件开发类-2018.09.20
  2. 联想G50 进入BIOS的快捷键
  3. Android自定义View之实现简单炫酷的球体进度球
  4. IT传统组织结构及新型扁平化组织
  5. 基于C#的ArcEngine二次开发46:编辑内容回撤与炸开multipart feature
  6. 2021年通辽市高考成绩查询,2021年通辽高考状元名单公布,通辽文理科状元是谁多少分...
  7. verify.js纯前端验证码插件
  8. 路坦力、英伟达、纳多德强强联合,高速光网络+超融合打造数字化转型新引擎
  9. flask、element、vue项目实战:搭建一个加密excel数据的网站
  10. Ubuntu 15.10/16.04 上安装Caffe——确保编译好的库相互兼容