WZOI-354找子串
题目描述:
给定两个字符串a和b,我们定义a*b表示字符串的连接。例如,如果a=”abc”,b=”def”,那么a*b=“abcdef”,如果这种连接是多重的,可以用幂的形式来定义:a^0=“” (空串),a^(n+1)=a*(a^n)。
输入格式:
只有一行表示一个字符串s,长度至少为1,不超过100
输出格式:
输出最大的n值,如s=a^n(a是某个字符串)
样例输入:
样例1: abcd样例2: aaaa样例3: ababab
样例输出:
样例1: 1样例2: 4样例3: 3
提示:
本题要用到C++字符串的一些命令。
1)定义字符串类型
string s; //长度无限长
2)读入一行字符串
cin >> s; //读到空格为止
getline ( cin , s ) //以行为单位,读入整行内容给 s
3)求字符串的长度:
s.length( )
4)查看字符串的某一位置的字符:
s [ i ]
5)取字符串当中的某一段子串:
s.substr( i , 3 ) //在s字符串从i位开始连续取长度为3的子串。
6)字符串的比较:
两串字符串s1和s2,可以直接用>、<、==等关系运算符进行比较。
时间限制: 1000ms
空间限制: 256MB
代码如下:
#include<bits/stdc++.h>
using namespace std;
int a[1000005],len;
char s[1000010];
void fun(){int i=0;int j=-1;a[0]=-1;while(i<len){if(j==-1||s[i]==s[j]){i++;j++;a[i]=j;}else{j=a[j];} }
}
int main(){while(scanf("%s",s)!=EOF){if(s[0]=='.'){break;}len=strlen(s);fun();if(len%(len-a[len])==0){printf("%d\n",len/(len-a[len]));}else{printf("1\n");}}return 0;
}
WZOI-354找子串相关推荐
- 找子串替换(kmp)poj1572
题目链接:http://poj.org/problem?id=1572 输入数据时要注意,这里是string型 用getline(cin,origin[i]); #include <string ...
- 每天一道LeetCode-----最长回文子串/序列,从头开始的最长回文子串长度
Longest Palindromic Substring 原题链接 Longest Palindromic Substring 意思是找到最长的回文子串,注意子串和子序列的区别 蛮力法就将每个可能的 ...
- 72.Minimum Window Substring(最小子串窗口)
Level: Hard 题目描述: Given a string S and a string T, find the minimum window in S which will contain ...
- 【LeetCode笔记】76. 最小覆盖子串(字符串、滑动窗口)
文章目录 题目描述 思路 && 代码 二刷 最近一直在充电基础知识.维护 leetcode 总结博客 今天继续摸一摸新题目吧- 题目描述 感觉和 03. 无重复的最长子串 有点像,都是 ...
- LeetCode 3. 无重复字符的最长子串 (滑动窗口哈希表)
3. 无重复字符的最长子串 题意: 找子串 子串中无重复字符 要求子串长度最长 解法1(暴力法) 思路: 建立一个长度不断变小的滑动窗口 用一个指针指针扫描窗口内的每个元素: 如果除去指针指向的那个元 ...
- power oj 2866青春猪头少年不做怀梦美少女的梦(寻找母串中有多少个子串)
Description 下面解释一下什么是前缀和后缀: 字符串的前缀就是字符串的任意一个首部,他也是一个字符串,例如"abcd"他的前缀有"a","a ...
- LeetCode(3)——最长不重复子串
题目内容 描述 给定一个字符串,找出不含有重复字符的最长子串的长度. 示例: 给定 "abcabcbb" ,没有重复字符的最长子串是 "abc" ,那么长度就是 ...
- Shell编程—【01】shell中常用的字符串操作
计算字符串长度 ${#string} expr length "$string" v1="i love you" len=`expr length " ...
- 算法学习:后缀数组(SA)
[参考博客] https://xminh.github.io/2018/02/27/%E5%90%8E%E7%BC%80%E6%95%B0%E7%BB%84-%E6%9C%80%E8%AF%A6%E7 ...
最新文章
- php性能优化和细节优化
- HDU 1715 大菲波数
- 多对多关联映射(双向)
- 对使用CodeSmith模板生成NHibernate的代码的分析
- 腾讯或联姻优酷,微信嫁女模式引发互联网通婚潮流
- html调用xfplugin,使用多设备执行脚本的时候,html report功能无法正常使用
- Hanoi Tower 模拟
- sql2005数据库备份—sql语句
- protel99se简明实用手册
- windows7共享打印机无法连接0x00000bcb错误怎么解决
- 网络模型早停earlystopping详解
- 案例分析:从误删除数据库血案看数据库系统的安全设计
- 淘宝付邮试用Chrome桌面提醒插件(含源码)
- MMGG聚焦| Mines of Dalarnia-土地预售在即
- 计算机原理作文,海口经济技术学院微型计算机原理作业第三章 习题与思考题:自述作文...
- python实现前复权及后复权
- 2019年,一个人最好的生活状态
- iPhone 14/Pro卫星紧急求救上线;非法采集用户位置,谷歌赔偿3.9亿美元;Node.js 19.1.0发布|极客头条
- 块加密 工作模式 ECB、CBC、PCBC、CFB、OFB、CTR
- 差分定位和精密定位(一)--差分定位
热门文章
- VsCode快捷键高级使用
- LabVIEW基础-VISA常见错误
- python的urllib2实现登录网页_python模拟网站登录(urllib、urllib2模拟登录)
- Java:ews-java-api获取Outlook/Exchange Web Services (EWS)会议日程
- FilmicToneMapping
- php评论盖楼怎么实现,评论区设计(一):如何做好盖楼式评论?
- 01_心理咨询_微信小程序项目实战_项目概述
- 支持批量图片转文字的免费【OCR】文字识别工具,支持截图识别和批量图片识别,开源工具,速度快,准确度高,免费OCR,开源软件
- 《计算机组成原理》— 外部设备
- classes是什么意思怎么读_般若怎么读?般若是什么意思?