news 2026/6/25 15:09:15

字符串移位包含问题与删除单词后缀问题

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
字符串移位包含问题与删除单词后缀问题

字符串移位包含问题

由于最多有字符串长度个移位,所以我利用字符串添加(即复制自身并添加到自己末尾)形成新的字符串,再在行的字符串中利用“.find()”函数寻找另一个字符串。再由题意反着来一遍即可。

#include<bits/stdc++.h>
using namespace std;
int main(){
string s1,s2;
cin >> s1 >> s2;
bool k = false;

string T = s1;//T用于存放拼接后的子串
for(char &c : s1){
T += c;//拼接一个s1
}
//检查s2是否是拼接后的s1子串
if(T.find(s2) != string::npos){k = true;}
else//由于是要检查一个是否是另一个,所以反过来检查一遍
{
T = s2;//重置字符串T
for(char &c : s2){
T += c;//拼接一个s2
}
//检查s1是否是拼接后的s2子串
if(T.find(s1) != string::npos){k = true;}
}
cout << boolalpha << k << endl;//输出字符型的布尔值k
}

删除单词后缀问题

由于要确认检查并删除的是单词后缀而非其他干扰部分,所以我新建一个字符串t 并且t = s;再在字符串后添加一个字符‘T’用于定位(也可以是其他字符,避免添加后也会在单词内部找到即可)。

然后利用“.find()”函数查找“erT”等,并定义一个ops用于记录其返回值(用于后续删除操作的定位)。

最后用“s.erase(ops,3)”函数(从ops开始截去3个字符)删除即可。

#include<bits/stdc++.h>
using namespace std;
int main(){
string s;
cin >> s;
string t = s;
t += 'T';//用于确认检查的是单词后缀
size_t ops = t.find("erT");//检查是否含有"erT",并返回其索引值(如果不含有,则返回string::npos)
if(ops == string::npos) { ops = t.find("lyT");}//检查是否含有"lyT"
if(ops == string::npos) { ops = t.find("ingT");}//检查是否含有"ingT"

if(ops != string::npos){s = s.erase(ops,3);cout << s << endl;}//"s = s.erase(ops,3)"从ops开始截去3个字符
else cout << s << endl;
return 0;
}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/24 18:56:14

【JavaWeb】HttpServletRequest_获取请求行和请求头

目录HttpServletRequest简介常见API测试请求行相关请求头相关HttpServletRequest简介 HttpServletRequest是什么? HttpServletRequest是一个接口&#xff0c;其父接口是ServletRequestHttpServletRequest是Tomcat将请求报文转换封装而来的对象&#xff0c;在Tomcat调用servi…

作者头像 李华
网站建设 2026/6/23 23:09:07

29、Linux 系统软件包管理全解析

Linux 系统软件包管理全解析 1. 软件包管理概述 在 Linux 系统中,软件的获取和管理方式与其他操作系统有所不同。为了安装必要的应用程序并保持其更新,我们需要掌握软件包的获取和管理方法。由于打包的软件通常通过网络(如互联网)分发,在配置好 Linux 系统的网络后,软件…

作者头像 李华
网站建设 2026/6/25 1:49:31

好写作AI格式革命:一键跨越从“草稿”到“期刊”的最后鸿沟

当你终于改完论文最后一稿&#xff0c;却发现自己要面对17种不同的格式要求、89条引用规范和无数个“这个到底用逗号还是分号”的灵魂拷问时——别担心&#xff0c;好写作AI的格式化引擎已准备就绪。 据统计&#xff0c;格式调整平均占用研究者论文总耗时的18%&#xff0c;而因…

作者头像 李华
网站建设 2026/6/23 19:07:43

MudBlazor文本字段内边距异常终结指南:从混乱布局到完美对齐

MudBlazor文本字段内边距异常终结指南&#xff1a;从混乱布局到完美对齐 【免费下载链接】MudBlazor Blazor Component Library based on Material design with an emphasis on ease of use. Mainly written in C# with Javascript kept to a bare minimum it empowers .NET de…

作者头像 李华
网站建设 2026/6/22 10:31:00

GLM-4.6大模型完整指南:200K上下文+智能体工具调用终极方案

GLM-4.6大模型完整指南&#xff1a;200K上下文智能体工具调用终极方案 【免费下载链接】GLM-4.6 GLM-4.6在GLM-4.5基础上全面升级&#xff1a;200K超长上下文窗口支持复杂任务&#xff0c;代码性能大幅提升&#xff0c;前端页面生成更优。推理能力增强且支持工具调用&#xff0…

作者头像 李华
网站建设 2026/6/24 4:09:23

OpenTelemetry Collector全栈测试环境搭建实战指南

OpenTelemetry Collector全栈测试环境搭建实战指南 【免费下载链接】opentelemetry-collector OpenTelemetry Collector 项目地址: https://gitcode.com/GitHub_Trending/op/opentelemetry-collector 为什么你的Collector测试总是困难重重&#xff1f; 当你尝试在本地验…

作者头像 李华