刷清橙OJ--A1038.超级重复串
来源:互联网 发布:数据服务 编辑:程序博客网 时间:2024/05/29 21:31
问题:
A1038. 超级重复串
时间限制:1.0s 内存限制:512.0MB
总提交次数:2665 AC次数:978 平均分:61.01
问题描述
给定一个仅包含小写字母的字符串,求其中的最长连续重复子串的长度。
设给定的字符串为S[1...n],那么最长连续重复子串S[i...j]满足以下条件:
1.1<=i<=j<=n并且j-i+1为偶数;
2.设L=(j-i+1)/2,那么对于0<=k<L都有S[I+K]=S[I+L+K];
3.最长重复子串是满足1,2的i,j中j-i+1的值最大的。
输入格式
输入仅一行,为给出的字符串,长度不超过100。
输出格式
输出仅包含一个整数,为最长连续重复子串的长度。
样例输入
abababa
样例输出
4
代码:
#include <iostream>#include <string.h>using namespace std;int main(){char a[110];cin>>a;int result=-1000;for(int i=0;i<strlen(a)-1;i++){for(int j=i+1;j<strlen(a);j=j+2){int L=(j-i+1)/2;int flag=0;for(int k=0;k<L;k++){if(a[i+k]!=a[i+L+k]){flag=1;break;}}if(flag==0){if(j-i+1>result){result=j-i+1;}}}}cout<<result<<endl;return 0;}
个人想法:如何把题中给出的条件转换为代码是关键。还是说多练。代码来自试题讨论。
阅读全文
1 0
- 刷清橙OJ--A1038.超级重复串
- 超级重复串
- PAT A1038
- PAT-A1038
- 超级台阶 OJ 76
- 超级台阶-OJ
- 九度OJ 重复子串
- HDU OJ 2041 超级楼梯
- OJ删除重复字符串
- PAT a1038题解
- 九度OJ 1530 最长不重复子串
- 九度 oj 题目1555:重复子串
- 杭电OJ -- 2041 超级楼梯
- OJ 排序后去重复
- 第十七周OJ-重复字符串
- 第十七周 OJ 重复字符串
- 【OJ练习】删除重复字符
- 华为oj:删除重复字符
- 在Android中使用Realm作本地存储
- 【简记】大规模Web开发技术(第十三章)
- 浅谈程序数据在执行时的变化
- Android布局动画
- echarts
- 刷清橙OJ--A1038.超级重复串
- 润乾报表单独部署url安全之加解密函数
- 程序员面试金典——奇偶位交换__(位运算)
- BZOJ 4653: [Noi2016]区间 线段树
- 翻转单词顺序
- 初识多线程 (其二)
- 类加载器
- 二阶构造
- MySQL和Oracle