CF949A LFYZOJ#111 Zebras
由于每个子串以0开头,以0结束.
容易得到:0的个数必须比1多.
我们设置一个统计数量的变量cnt.
由于不知道子串个数,防止炸空间,用二维的动态数组vector.
先输入 然后扫一遍,遇到0 cnt++,并且把0的位置压进数组.遇到1 cnt--,并把1的位置压进数组.因为遇到0后再遇到1 cnt的值不会变,所以此时的子串0和1的位置就放到了数组的cnt这同一行上.如果cnt比0小直接输出-1.
上代码
#include<bits/stdc++.h>
using namespace std;
char s[200005];
int l,cnt,k;
vector<int>q[200005];
int main(){scanf("%s",s);l=strlen(s);for(int i=0;i<l;i++){if(s[i]=='0')q[cnt++].push_back(i+1);else{if(cnt==0){printf("-1");return 0;}q[--cnt].push_back(i+1);}k=max(k,cnt);}if(cnt!=k){printf("-1");return 0;}printf("%d\n",cnt);for(int i=0;i<cnt;i++){printf("%d",q[i].size());for(int j=0;j<q[i].size();j++)printf(" %d",q[i][j]);printf("\n");}return 0;
}
转载于:https://www.cnblogs.com/pushinl/p/8942498.html
CF949A LFYZOJ#111 Zebras相关推荐
- 美团面试题:String s = new String(111)会创建几个对象?
点击关注公众号,Java干货及时送达 来源:blog.csdn.net/o9109003234/article/details/109523691 String不可变吗? public class A ...
- MariaDB: ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111 Connection refused)
MariaDB : ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111 "Connection ref ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(九)安装kafka_2.11-1.1.0
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
- 领扣-104/111 二叉树的最大深度 Maximum Depth of Binary Tree MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- OGG 同步报错 - TCP/IP error 111 (Connection refused)
ggsci 登入后, 执行如下命令 info all 发现 peast (east用户,pump进程) 这个 pump进程不是running 状态,查看这个进程对应的 Lo ...
- 自己建文件111 txt python_这可能是最详细的Python文件操作
删除 # ==================删除================== # 只能删除文件,若为目录则报错 # 若文件正在使用,Windows下会直接报错,Linux下会在目录表中删除记 ...
- 第111天:Ajax之jQuery实现方法
由于jQuery中的Ajax方法是用了内置的deferred模块,是Promise模式的一种实现,而我们这里没有讲过,所以我们就不使用这一模式啦. 我们只定义一个Ajax方法,他可以简单的get,po ...
- matplotlib.pyplot中add_subplot方法参数111的含义
>引自:http://www.codeweblog.com/matplotlib-pyplot中add_subplot方法参数111的含义/
- JAVA实现查看详情功能_【JavaWeb】111:详情页面的实现
今天是刘小爱自学Java的第111天. 感谢你的观看,谢谢你. 话不多说,开始今天的学习: 我们浏览网页时看到的数据无外乎两种:静态数据和动态数据. 静态数据是将数据给写死了,需要修改时得去改对应的某 ...
最新文章
- 【MyBatis框架】MyBatis入门程序第一部分
- C语言中 void* 详解及应用
- Qtum量子链作客第四届拉美商业科技大会
- 主题图标_Avada主题网站favicon图标设置详细图文教程
- ERROR: Start Page at 'www/index.html' was not found
- 平流式隔油池计算_隔油池计算方法及图集[参考提供]
- Asp.Net 网站一键部署技术(下)
- java 线性的排序算法_数据结构之排序算法Java实现(9)—— 线性排序之 基数排序算法...
- 变分模态分解 python_Variational Mode Decomposition (变分模态分解)
- JavaScript制作标准计算器
- Base64的Woff2字体信息如何转成成文件
- 虚拟机内安装金蝶K3环境
- QQ等级计算方法及图标
- linux智能英文输入法,Linux_Ubuntu下安装智能拼音输入法,一、安装scim中的智能拼音 
更 - phpStudy...
- ajax hapi上传文件,在hapi框架里使用ajax提交表单数据,但是服务端接收到的数据是空对象。怎么办啊?...
- 上善若水 (9月18日)
- Cisco PacketTracer5---三层交换机连接路由器配置
- 5G关键技术,D2D通信-ielab
- 极速办公(PPT)如何添加双删除线
- YOLOv5火焰识别
热门文章
- Adobe Bridge 2021中文版
- idea2019中文版
- 星空[好题][题意转化]
- [ZJOI2008]生日聚会Party
- 深入浅出SQL Server中的死锁
- 架构设计-业务逻辑层简述
- apktool+dex2jar+jd_gui
- PostgreSQL 无会话、有会话模式 - 客服平均响应速度(RT)实时计算实践(窗口查询\流计算)...
- JavaScript 复习之 Array 对象
- 上云实践操作(漫步云端)之上云动力