LeetCode 1933. 判断字符串是否可分解为值均等的子串
文章目录
- 1. 题目
- 2. 解题
1. 题目
一个字符串的所有字符都是一样的,被称作等值字符串。
举例,"1111"
和 "33"
就是等值字符串。
相比之下,"123"
就不是等值字符串。
规则:给出一个数字字符串s,将字符串分解成一些等值字符串,如果有且仅有一个等值子字符串长度为2,其他的等值子字符串的长度都是3.
如果能够按照上面的规则分解字符串s,就返回真,否则返回假。
子串就是原字符串中连续的字符序列。
示例 1:
输入: s = "000111000"
输出: false
解释: s只能被分解长度为3的等值子字符串。示例 2:
输入: s = "00011111222"
输出: true
解释: s 能被分解为 ["000","111","11","222"].示例 3:
输入: s = "01110002223300"
输出: false
解释: 一个不能被分解的原因是在开头有一个0.提示:
1 <= s.length <= 1000
s 仅包含数字。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/check-if-a-string-is-decomposble-to-value-equal-substrings
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
- 按题意模拟
class Solution {public:bool isDecomposable(string s) {if(s.size()%3 != 2)return false;char prev = s[0];int ct = 1, two = 0;s += '*'; // 简化代码for(int i = 1; i < s.size(); ++i){if(s[i] != prev){if(ct == 1 || ct > 3)return false;else if(ct == 2){two++;if(two > 1)return false;}ct = 1;}else{ct++;if(ct > 3)ct -= 3;}prev = s[i];}return two==1;//只能有一个长度2的等值字符子串}
};
0 ms 6.6 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
LeetCode 1933. 判断字符串是否可分解为值均等的子串相关推荐
- linux 判断字符串格式,shell基础(二)字符子串及类型判断符
一.变量子串 [root@mycentos shell_dir]# old="hello,world" [root@mycentos shell_dir]# echo $old h ...
- LeetCode 1704. 判断字符串的两半是否相似
文章目录 1. 题目 2. 解题 1. 题目 给你一个偶数长度的字符串 s .将其拆分成长度相同的两半,前一半为 a ,后一半为 b . 两个字符串 相似 的前提是它们都含有相同数目的元音('a',' ...
- Leetcode1704判断字符串的两半是否相似(C++题解)
1704. 判断字符串的两半是否相似 给你一个偶数长度的字符串 s .将其拆分成长度相同的两半,前一半为 a ,后一半为 b . 两个字符串 相似 的前提是它们都含有相同数目的元音('a','e',' ...
- 用递归方式判断字符串是否是回文
题目要求:使用递归方式判断某个字串是否是回文( palindrome )回文"是指正着读.反着读都一样的句子.比如"我是谁是我" 设计思想:首先能实现可输出任意字符串,然 ...
- leetcode 344. 反转字符串 541. 反转字符串 II 双指针解
目录 leetcode 344.反转字符串 1.题目 2.思考 leetcode 541. 反转字符串 II 1.题目 2.思考 leetcode 344.反转字符串 1.题目 2.思考 典型的双指针 ...
- LeetCode——1849. 将字符串拆分为递减的连续值(Splitting a String Into Descending Consecutive Val..)[中等]——分析及代码(Java)
LeetCode--1849. 将字符串拆分为递减的连续值[Splitting a String Into Descending Consecutive Values][中等]--分析及代码[Java ...
- 代码随想录算法训练营第08天 | LeetCode 344.反转字符串,541. 反转字符串2,剑指Offer 05.替换空格,151.翻转字符串里的单词,剑指Offer58-II.左旋转字符串
LeetCode [344. 反转字符串] 题目:编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 s 的形式给出. 不要给另外的数组分配额外的空间,你必须**原地修改输入数组**. ...
- leetcode 205.同构字符串
leetcode 205.同构字符串 题目描述 给定两个字符串 s 和 t,判断它们是否是同构的. 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的. 所有出现的字符都必须用另一个字符 ...
- C++ 判断字符串是否为空
C++ 判断字符串是否为空 有2种方法 1种是用使用empty 2 使用== 与"" 比较 具体的如下: #include <iostream> #include &l ...
最新文章
- python_socket
- Exchange 2007迁移2010时的公用文件夹多个公用树错误
- Hbase数据存储架构
- 认识计算机硬件观评课,观课听课评课评语
- Android 动态类加载实现免安装更新
- 【Linux】 命令收集
- 数据库IN查询参数化改造的方法
- 创意设计师变圆周率为彩色艺术品
- C++虚继承的实现原理、内存分布、作用
- 多语言版本网站建设数据库设计和考虑的因素
- 实现国标GB/T2818视频流媒体解决方案EasyGBS国标GB28181-2016版的sip协议tcp沾包流程说明介绍
- ssis 有条件拆分_SSIS条件拆分转换概述
- 程序员修神之路--分布式高并发下Actor模型如此优秀
- Java调用动态库 缺点,Java调用动态库所需要关心的有关问题
- TensorFlow精进之路(十一):反向传播BP
- Logstash 初探
- 教育平台在线,教育平台源码 类似eduline教育平台系统源码下载
- 用C++编写银行叫号系统,项目开源,适合零基础小白学习!
- JS正则表达式语法大全(非常详细)
- 小米Civi的女性突围战
热门文章
- rabbitmq direct 多个消费者_一文解析 RabbitMQ 最常用的三大模式
- Django REST framework 视图
- ajax on ture,细数Ajax请求中的async:false和async:true的差异
- python求加速度_如何利用Python 为自然语言处理加速度
- android 软件盘弹回去的最好体验,Android 软键盘弹出 日常填坑
- python3图片转代码_python3图片转换二进制存入mysql示例代码
- 《C++标准程序库》学习笔记5 — 第七章
- BZOJ3251: 树上三角形
- Bootstrap全局CSS样式之表单
- 天气预报Dom解析(转)