给出一个非空的字符串,判断这个字符串是否是由它的一个子串进行多次首尾拼接构成的。
例如,"abcabcabc"满足条件,因为它是由"abc"首尾拼接而成的,而"abcab"则不满足条件。
要求:求最长的拼接子串
思路:从原字符串的1/2处开始截取,判断截取的字符串可否构成原字符串。然后再从1/3出截取判断,直到截取字符串长度为1,在这个过程中,如果存在符合条件的子串,那么它一定是最长子串,挑出循环输出即可。如果所有循环结束都没有找出符合条件的子串,那么输出false

#include <iostream>
#include <string>
using namespace std;int main()
{string str;while (cin >> str){int n = str.size();bool isOk = false;for (int i = n/2; i >= 1; --i){string tmp = str.substr(0, i);string res;for (int j = 0; j < n / i; ++j)res += tmp;if (res == str){cout << tmp << endl;isOk = true;break;}}if (!isOk)cout << "false" << endl;}return 0;
}

转载于:https://www.cnblogs.com/immjc/p/9455657.html

[Nowcoder] 寻找子串相关推荐

  1. [1204 寻找子串位置] 解题报告

    题目描写叙述 Description 给出字符串a和字符串b,保证b是a的一个子串.请你输出b在a中第一次出现的位置. 输入描写叙述 Input Description 仅一行包括两个字符串a和b 输 ...

  2. [codeVS1204] 寻找子串位置

    时间限制: 1 s空间限制: 128000 KB题目等级 : 青铜 Bronze 题目描述 Description 给出字符串a和字符串b,保证b是a的一个子串,请你输出b在a中第一次出现的位置. 输 ...

  3. STL|QTL工作笔记-QString与std::string寻找子串的区别与联系

    目录 STL中的string QTL中的QString 总结 STL中的string 在STL中,是采用这个逻辑进行的: 1.设置一个标志接收find的返回值: 2.当标志为XXX时,则为找到,否则为 ...

  4. hdu2087 剪花布条 暴力/KMP

    在字符串中不可重叠地寻找子串数量,暴力/KMP 1 #include<stdio.h> 2 #include<string.h> 3 4 int main(){ 5 char ...

  5. 详解动态规划最长公共子序列--JavaScript实现

    前面两篇我们讲解了01背包问题和最少硬币找零问题.这篇将介绍另一个经典的动态规划问题--最长公共子序列.如果没看过前两篇,可点击下面链接. 详解动态规划最少硬币找零问题--JavaScript实现 详 ...

  6. C++字符串函数与C字符串函数比较

    赋值拷贝: #include <iostream> #include <string> using namespace std;void main(){string a=&qu ...

  7. Python-str函数

    Help on class str in module __builtin__: 关于__builtin__模块中str类的帮助信息: class str(basestring)  |  str(ob ...

  8. C# indexof和indexofany区别(转)

    定位子串是指在一个字符串中寻找其中包含的子串或者某个字符.在String类中,常用的定位子串和字符的方法包括IndexOf/LastIndexOf及IndexOfAny/LastIndexOfAny, ...

  9. Java-- String源码分析

    本篇博文基于java8,主要探讨java中的String源码. 首先,将一个类分为几个部分,分别是类定义(继承,实现接口等),全局变量,方法,内部类等等,再分别对这几个部分进行说明,这样到最后类的全貌 ...

最新文章

  1. 手把手教你上手python库pydbgen(附代码、安装地址)
  2. 一个略复杂的数据映射聚合例子及代码重构
  3. php 分布式环境 启动,极简.高性能.分布式框架,可运行于多种环境(apache/php-fpm,swoole)...
  4. Linux下载安装一个源码包
  5. Robot Framework--环境搭建
  6. python哪个版本支持xp_windows支持哪个版本的python
  7. 财务人毕业三年薪资翻了三倍,学会数据分析竟然这么吃香
  8. [Android] android:visibility属性应用
  9. java中如何进入代码块_Java中的匿名代码块
  10. 朴素贝叶斯(Naive-Bayes)
  11. c语言sinx的幂级数展开式,sinx的幂级数展开式问题?
  12. Python中的装饰器及@用法详解
  13. 中国城市竞争力历年数据(2005-2009年)
  14. elementUI中的Backtop回到顶部
  15. 程序员必备的6个好习惯,成为更优秀的自己
  16. 虚幻4全自动连续射击
  17. OpenGL法线贴图
  18. 事件起泡 Event bubbling
  19. 如何通过API方式集成金蝶ERP
  20. Oracle Data Guard搭建——Physical Standby Database

热门文章

  1. Android编码实现软件界面
  2. LCS2005客户端配置详解:LCS2005系列之二
  3. 定义css设备类型-Media Queries图表简介及使用方法
  4. JavaScript 判断 DOM 何时加载完毕
  5. 设计模式之反射与配置文件
  6. HBase常用功能和HBase+MapReduce使用总结
  7. LeetCode-Sort List 链表排序
  8. 正则表达式之IP地址检验
  9. 人工智能是如何改变IT运维和DevOps的?
  10. linux 命令改别名