usaco3.2.3 01串
这一道题原先是一个一个生成,一个一个加上去最后可怜的超时了。后来想到,可以先算出第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串相关推荐
- NYOJ 252 01串 dp
01串 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 ACM的zyc在研究01串,他知道某一01串的长度,但他想知道不含有"11"子串的这种长度的0 ...
- 1593: 01串(找规律)
1593: 01串 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 325 Solved: 143 [Submit][Status][Web Board] ...
- 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。
//编写人:yike //时间:2021/12/25/17:11 //问题描述 // //对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: // //00000 / ...
- 【无码专区5】01串(大讨论+构造)
因为只有std,没有自我实现,所以是无码专区 主要是为了训练思维能力 solution才是dls正解,但是因为只有潦草几句,所以大部分会有我自己基于正解上面的算法实现过程,可能选择的算法跟std中dl ...
- 3.14 01串排序
将01串首先按照长度排序,其次按1的个数的多少排序,最后按ASCII码排序. 输入样例: 10011111 00001101 10110101 1 0 1100 输出样例: 0 1 1100 1010 ...
- 【Hihocoder - offer编程练习赛93 套题题解】交错01串(贪心,暴力)方格矩阵高度(模拟)数对(STLmultiset)修整土地(网络流)
A: 题干: 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi要将一个01串S传输给小Ho,由于S非常长,所以小Hi决定用长度为N的2个数组A = [A1, A2, ...
- 【nyoj - 252】 01串(简单dp)
题干: 01串 时间限制:1000 ms | 内存限制:65535 KB 难度:2 输入 第一行有一个整数n(0<n<=100),表示有n组测试数据; 随后有n行,每行有一个整数m(2 ...
- 01串(51Nod-1391)
题目 给定一个01串S,求出它的一个尽可能长的子串S[i..j],满足存在一个位置i<=x <j, S[i..x]中0比1多,而S[x + 1..j]中1比0多.求满足条件的最长子串长度. ...
- 51nod-1391:01串
1391 01串 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题 收藏 关注 给定一个01串S,求出它的一个尽可能长的子串S[i. ...
最新文章
- jQuery之简单的表单验证
- uva437The Tower of Babylon
- java 异常 最佳实践_关于JAVA异常处理的20个最佳实践
- 695.岛屿的最大面积(026)BFS
- java jdbc 乱码_【求助】为什么用纯java jdbc插入mysql一直乱码
- SVN中如何去除版本控制器
- 7-2 哈夫曼编码 (30 分)
- 征服RIA:元编程的思想
- 四川大学计算机学院 学术委员会,学术委员会完整列表
- 如何正确的卸载MATLAB7?
- 理解证券行业“行业分类
- 〖Python 数据库开发实战 - MySQL篇㉞〗- 综合案例 - 新闻管理系统数据库设计的基本属性
- STM STC NXP单片机 按键扫描
- (Linux)mongodb启用安全认证登录
- 文氏图解析SQL语句中JOIN操作
- UE官网ARPG游戏学习笔记1
- 停车场web项目(内含有数据库)
- AJAX 请求 NIDE 搭建简单服务
- 业务运维离不开腾讯数据库TcaplusDB事务管理
- 《JavaScript前端开发案例教程》------第8章事件课后练习
热门文章
- 小米 2019校园招聘软件开发类-2018.09.20
- 联想G50 进入BIOS的快捷键
- Android自定义View之实现简单炫酷的球体进度球
- IT传统组织结构及新型扁平化组织
- 基于C#的ArcEngine二次开发46:编辑内容回撤与炸开multipart feature
- 2021年通辽市高考成绩查询,2021年通辽高考状元名单公布,通辽文理科状元是谁多少分...
- verify.js纯前端验证码插件
- 路坦力、英伟达、纳多德强强联合,高速光网络+超融合打造数字化转型新引擎
- flask、element、vue项目实战:搭建一个加密excel数据的网站
- Ubuntu 15.10/16.04 上安装Caffe——确保编译好的库相互兼容