蓝桥杯 - 字串统计
来源:互联网 发布:安卓chroot ubuntu 编辑:程序博客网 时间:2024/04/28 11:02
算法训练 字串统计
时间限制:1.0s 内存限制:512.0MB
问题描述
给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交),如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。
输入格式
第一行一个数字L。
第二行是字符串S。
L大于0,且不超过S的长度。
输出格式
一行,题目要求的字符串。
输入样例1
4
bbaabbaaaaa
输出样例1
bbaa
输入样例2
2
bbaabbaaaaa
输出样例2
aa
数据规模和约定
n<=60
S中所有字符都是小写英文字母。
提示
枚举所有可能的子串,统计出现次数,找出符合条件的那个
思路:
就按照提示的信息暴力枚举就好了,这里用到string的一个函数,字符串截取函数substr(),这个函数有两个参数,第一个参数是截取的起始位置,第二个参数是要截取的字符串的长度。
#include<cstdio>#include<cstring>#include<string>#include<iostream>#include<algorithm>using namespace std;int main(){ int l, maxn, cnt; string s, s1, s2, ans; while(scanf("%d", &l)!=EOF){ cin >> s; int len = s.length(); maxn = cnt = 0; for(int i = l; i <= len; i++){ for(int j = 0; j + i <= len; j++){ cnt = 0; s1 = s.substr(j, i); for(int k = 0; k+i <= len; k++){ s2 = s.substr(k, i); if(s1 == s2) cnt++; } if(cnt > maxn){ ans = s1; maxn = cnt; } else if(cnt == maxn && s1.length() > ans.length()){ ans = s1; } } } cout << ans << endl; } return 0;}
0 0
- 【蓝桥杯训练】字串统计
- 字串统计 --- 蓝桥杯
- 蓝桥杯 - 字串统计
- 蓝桥杯—字串统计
- 蓝桥杯:字串统计
- java 蓝桥杯 字串统计
- 蓝桥杯 字串统计
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯--算法训练 字串统计
- 蓝桥杯 算法训练 字串统计
- 字串统计——蓝桥杯
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯 算法训练 字串统计
- 蓝桥杯——字串统计
- 蓝桥杯-字串统计(java)
- 蓝桥杯 算法训练 字串统计
- [蓝桥杯]算法训练 字串统计
- 数字证书和数字签名
- 京东价格监控软件开发技术探讨五:京东验证码的获取
- poj2485 2010.2.21
- 【java基础】J2EE视频总结
- poj1012 2010.2.22
- 蓝桥杯 - 字串统计
- 页面滚动视差效果的实现
- poj1068 2010.2.22
- sql获取全部表名,并表内字段名
- java操作大文件复制
- poj1023 2010.2.22
- poj2593 2010.2.22
- 【MinaFile】【八】【2.0】项目Model
- 正则表达式:Pattern类与Matcher类详解