LeetCode 1750. 删除字符串两端相同字符后的最短长度(双指针)

文章目录

    • 1. 题目
    • 2. 解题

在这里插入图片描述
322 / 1676, 19.2%
在这里插入图片描述
1166 / 8426,13.8%

https://leetcode-cn.com/contest/biweekly-contest-45/ranking/

前两题:
LeetCode 1748. 唯一元素的和
LeetCode 1749. 任意子数组和的绝对值的最大值(前缀和)
第四题:LeetCode 1751. 最多可以参加的会议数目 II(DP + 二分查找)

1. 题目

给你一个只包含字符 ‘a’,‘b’ 和 ‘c’ 的字符串 s ,你可以执行下面这个操作(5 个步骤)任意次:

  • 选择字符串 s 一个 非空 的前缀,这个前缀的所有字符都相同。
  • 选择字符串 s 一个 非空 的后缀,这个后缀的所有字符都相同。
  • 前缀和后缀在字符串中任意位置都不能有交集
  • 前缀和后缀包含的所有字符都要相同。
  • 同时删除前缀和后缀。

请你返回对字符串 s 执行上面操作任意次以后(可能 0 次),能得到的 最短长度

示例 1:
输入:s = "ca"
输出:2
解释:你没法删除任何一个字符,
所以字符串长度仍然保持不变。示例 2:
输入:s = "cabaabac"
输出:0
解释:最优操作序列为:
- 选择前缀 "c" 和后缀 "c" 并删除它们,得到 s = "abaaba"- 选择前缀 "a" 和后缀 "a" 并删除它们,得到 s = "baab"- 选择前缀 "b" 和后缀 "b" 并删除它们,得到 s = "aa"- 选择前缀 "a" 和后缀 "a" 并删除它们,得到 s = "" 。示例 3:
输入:s = "aabccabba"
输出:3
解释:最优操作序列为:
- 选择前缀 "aa" 和后缀 "a" 并删除它们,得到 s = "bccabb"- 选择前缀 "b" 和后缀 "bb" 并删除它们,得到 s = "cca" 。提示:
1 <= s.length <= 10^5
s 只包含字符 'a''b''c'

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-length-of-string-after-deleting-similar-ends
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 双指针模拟
class Solution {
public:int minimumLength(string s) {int i = 0, j = s.size()-1;char l, r;while(i < j && s[i] == s[j]){l = s[i], r = s[j];while(i < j && s[i] == l)i++;while(i-1 < j && s[j] == r)j--;}return j-i+1;}
};

24 ms 12.4 MB C++


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/472938.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分词、语法树

######Jieba分词###### import jieba string如果一个文法存在某个句子对应两棵不同的语法树&#xff0c;则称这个文法是二义的 print(string) seg_listjieba.cut(string,cut_allFalse,HMMTrue) seg_str .join(seg_list) ######PCFG句法分析###### from nltk.parse import stan…

Android开发学习笔记-自定义组合控件

为了能让代码能够更多的复用&#xff0c;故使用组合控件。下面是我正在写的项目中用到的方法。 1、先写要组合的一些需要的控件&#xff0c;将其封装到一个布局xml布局文件中。 <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:an…

python基础实例 韦玮 pdf_Python基础实例教程(微课版)

第 1章 初识Python 1 1.1 快速了解Python 2 1.1.1 Python的起源与背景 2 1.1.2 Python的功能 3 1.1.3 Python的优势与特色 4 1.2 在Windows下搭建Python开发环境 6 1.2.1 操作系统的选择 6 1.2.2 在Windows下安装Python 7 1.3 在Linux下搭建Python开发环境 1…

测试是否支持跨域_浅谈跨域威胁与安全

WEB前端中最常见的两种安全风险&#xff0c;XSS与CSRF&#xff0c;XSS&#xff0c;即跨站脚本攻击、CSRF即跨站请求伪造,两者属于跨域安全攻击&#xff0c;对于常见的XSS以及CSRF在此不多谈论&#xff0c;仅谈论一些不太常见的跨域技术以及安全威胁。一、 域域&#xff0c;即域…

LeetCode 1752. 检查数组是否经排序和轮转得到

文章目录1. 题目2. 解题1. 题目 给你一个数组 nums 。 nums 的源数组中&#xff0c;所有元素与 nums 相同&#xff0c;但按非递减顺序排列。 如果 nums 能够由源数组轮转若干位置&#xff08;包括 0 个位置&#xff09;得到&#xff0c;则返回 true &#xff1b;否则&#xf…

linux-3.4.2移植到FL2440上(一)--只是基本移植

1.修改Makefile&#xff1a;ARCH ? armCROSS_COMPILE ? arm-linux-2.修改串口时钟&#xff1a;在/arch/arm/mach-s3c24xx/mach-smdk2440.c改为12Ms3c24xx_init_clocks(12000000);/* by zhutao */3.裁剪内核&#xff1a; │ -> System Type …

ts自动编译声明文件_拥抱 TS:细数选择 TS 的 N 种理由

作者 | 马靖day day up, bye bye bug最近在做一个新项目&#xff0c;技术大佬告知前端要用 TS 。前端小白的我内心疑惑“弱类型语言它不香嘛&#xff0c;为什么选择 TS &#xff1f;” 为了紧随大佬的流星大步&#xff0c;拥抱变化。带着这个疑惑我积(被)极(破)主(营)动(业)点开…

java分治法求数列的最大子段和_Java十大经典排序算法动画解析和 代码实现

排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序。内部排序是数据记录在内存中进行排序。而外部排序是因排序的数据很大&#xff0c;一次不能容纳全部的排序记录&#xff0c;在排序过程中需要访问外存。常见的内部排序算法有&#xff1a;…

岭回归预测PM2.5

# -*- coding: utf-8 -*- # File : demo2.py # Author : CJH # Date : 2019/4/9 # Software: PyCharm # Desc : 天气PM2.5预测import csv import numpy as np from numpy import * import matplotlib.pyplot as plt from sklearn import linear_modeltrainingData t…

LeetCode 1753. 移除石子的最大得分(优先队列)

文章目录1. 题目2. 解题2.1 优先队列2.2 脑筋急转弯1. 题目 你正在玩一个单人游戏&#xff0c;面前放置着大小分别为 a​​​​​​、b 和 c​​​​​​ 的 三堆 石子。 每回合你都要从两个 不同的非空堆 中取出一颗石子&#xff0c;并在得分上加 1 分。 当存在 两个或更多 …

基于Spring框架的Shiro配置

http://kdboy.iteye.com/blog/1103794 一、在web.xml中添加shiro过滤器 Xml代码 <!-- Shiro filter--> <filter> <filter-name>shiroFilter</filter-name> <filter-class> org.springframework.web.filter.Delegating…

dat文本导入mysql_mysql学习笔记(九) 增删改查的优化

一、大批量插入数据当使用load命令导入数据的时候&#xff0c;可以适当的提高导入的速度。对于myisam存储引擎的表可以通过下述方法快速的导入大量的数据。Alter table tablename disable keys;Loading dateAlter table tabename enable keys;其中disable keys和enable keys用来…

asp.net接受表单验证格式后再提交数据_如何解析 el-form-renderer 表单渲染器1.14.0...

DEEPEXI 大前端常人道&#xff0c;一入开发深似海&#xff0c;技术学习无止境。在新技术层出不穷的前端开发领域&#xff0c;有一群身怀绝技的开发&#xff0c;他们在钻研前沿技术的同时&#xff0c;也不忘分享他们的成果&#xff0c;回馈社区。下面&#xff0c;就由小水滴带大…

债券收益率预测模型_利率预测模型系列之二:利率预测模型带来的启示

利率预测模型带来的启示在《利率预测模型系列之一&#xff1a;简单的N-S 模型运用》中&#xff0c;我们对收益率曲线预测模型进行了简单介绍&#xff0c;该模型能够给我们提供较好的利率及收益率曲线预测效果。当然&#xff0c;在理论上&#xff0c;还有更多更复杂的利率预测模…

LeetCode 1751. 最多可以参加的会议数目 II(DP + 二分查找)

文章目录1. 题目2. 解题1. 题目 给你一个 events 数组&#xff0c;其中 events[i] [startDayi, endDayi, valuei] &#xff0c;表示第 i 个会议在 startDayi 天开始&#xff0c;第 endDayi 天结束&#xff0c;如果你参加这个会议&#xff0c;你能得到价值 valuei 。 同时给你…

SemEval-2010任务8:成对名词之间的语义关系的多分类

摘要SemEval-2任务8专注于名词对之间语义关系的多分类。 该任务旨在比较语义关系分类的不同方法&#xff0c;并为将来的研究提供标准的测试平台。 本文定义了任务&#xff0c;描述了训练和测试数据及其创建过程&#xff0c;列出了参与的系统&#xff08;10个团队&#xff0c;28…

tomcat GET 编码疑惑

本机开发环境 Windows tomcat eclipse 测试运行环境 Linux tomcat 大部分人知道&#xff0c;客户端GET方式提交的数据&#xff0c;tomcat默认按 iso-8859-1 处理。POST 方式 UTF-8。 今天遇到了GET也是默认按照UTF-8处理的情况&#xff0c;但是并未对tomcat的server.xml做过处理…

python恶搞代码打开对方摄像头_用Python获取摄像头并实时控制人脸的实现示例

实现流程 从摄像头获取视频流&#xff0c;并转换为一帧一帧的图像&#xff0c;然后将图像信息传递给opencv这个工具库处理&#xff0c;返回灰度图像&#xff08;就像你使用本地静态图片一样&#xff09; 程序启动后&#xff0c;根据监听器信息&#xff0c;使用一个while循环&am…

LeetCode 992. K 个不同整数的子数组(双指针)

文章目录1. 题目2. 解题1. 题目 给定一个正整数数组 A&#xff0c;如果 A 的某个子数组中不同整数的个数恰好为 K&#xff0c;则称 A 的这个连续、不一定独立的子数组为好子数组。 &#xff08;例如&#xff0c;[1,2,3,1,2] 中有 3 个不同的整数&#xff1a;1&#xff0c;2&a…

压缩可以卸载吗_番禺街坊注意!微信发送高清大文件不压缩,网友:QQ可以卸载了?...

刚上新了表情包的微信又双叒叕出新功能了这次的功能有点实用昨天&#xff0c;腾讯微信团队宣布微信已支持向朋友发送高清视频和图片且不会被压缩微信用户点击对话框右下角的号右滑点击文件在上方选择手机相册就能选择用户想要发送的视频和图片了目前通过「文件」方式发送的内容…