尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

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

字符串移位包含问题与删除单词后缀问题
📅 发布时间:2026/6/19 12:08:08

字符串移位包含问题

由于最多有字符串长度个移位,所以我利用字符串添加(即复制自身并添加到自己末尾)形成新的字符串,再在行的字符串中利用“.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;
}

相关新闻

  • 【JavaWeb】HttpServletRequest_获取请求行和请求头
  • 剪映 6.0.1:免费解锁 VIP 功能,剪辑创作性价比之选
  • Day1 1.A+B问题I -卡码网C++基础课

最新新闻

  • 2026年当下上海诚信的硼化锆源头厂家选型全指南 - 品牌鉴赏官2026
  • MC68HC908GP32 SPI通信深度解析:双缓冲机制与OVRF/MODF错误处理实战
  • AI写作辅助平台8款AI论文平台榜单,毕业护航利器!
  • 【微积分】三角函数求导积分公式的图形化记忆法
  • Dify插件集合:AI应用开发中的标准化组件库架构实践
  • Cesium 曲线漫游教程 | 3D Tiles·Cesium Entity三维可视化源码

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号