最短的基本字符串
来源:互联网 发布:苹果医药软件 编辑:程序博客网 时间:2024/05/29 14:05
#include<bits/stdc++.h>using namespace std;int main(){ string s,basic; while(cin>>s) { int n1=s.size();int count;for(int i=n1-1;i>=0;i--){count=0;basic=s.substr(i);if(n1%basic.size()!=0) continue;for(int j=0;j<n1;j++){if(s[j]==basic[j%basic.size()]) {count++;}else break;}if(count==n1) {for(int i=0;i<basic.size();i++){cout<<basic[i];}break;}}cout<<endl;}return 0;}
Description
有一字符串,是通过一个最基本的字符串不停复制拼接而成的。
例如:
1212121212121212
是通过“12”不停的复制变成的。
第一次 12
第二次 1212
第三次 12121212
第四次 1212121212121212
现在,给你这样一串字符串,希望你能找到合成这样一字符串的最短的基本字符串。
Input
有多行输入,每一行给出上述的一字符串(长度不超过1000)。
Output
对于每个字符串,输出最基本的一个字符串。
Sample Input
1212121212121212
Sample Output
12
这道题用了一个函数substr,具体用法有以下两种:
string s;
1. s.substr(3) :表示输出第三个字符以后的字符(不包括第三个),即输出s[3]及其以后的字符,eg,12345 输出45.
2. s.substr(3,2) :表示从第三个字符开始输出(不包括第三个),输出长度为2的字符,即输出s[3],s[4], eg,123456 输出4,5.
0 0
- 最短的基本字符串
- 最短的包含字符串
- 字符串翻转的最短代码实现
- 1127 最短的包含字符串
- 1127 最短的包含字符串
- 1127 最短的包含字符串
- 字符串最短路径
- 输出最短字符串
- XMU 1315.字符串编码 字符串的编码最短长度
- 每对顶点的最短路径 : 基本算法
- 最小生成树,最短路径的基本算法
- 最短路径的概念与基本数据结构
- 最短重复子字符串
- 1139: 输出最短字符串
- 字符串-最长最短单词
- 1139: 输出最短字符串
- 寻找一遍文章包涵关键字最短的字符串
- 求两个字符串的最短编辑距离
- [IOS]NULL与nil的区别
- 编程练习 15.12.07~15.12.14
- mybatis学习日记(一)1-预编译PreparedStatement以及jdbc缺点
- Android实战之 自定义GitHub开源项目ViewPagerIndicator
- .NET学习(九)Timer控件的使用
- 最短的基本字符串
- 音乐播放器
- 编程练习 15.12.15~15.12.22
- 数据库入门学习总结1
- 编程练习 15.12.23~15.12.29
- 深入分析JavaWeb Item36 -- 过滤器Filter高级应用
- uva10382
- JAVA常见问题总结
- 数据类型和运算符