poj 3080 Blue Jeans【字符串】
大致题意:
就是求k个长度为60的字符串的最长连续公共子串,2<=k<=10
规定:
1、 最长公共串长度小于3不输出
2、 若出现等长的最长的子串,则输出字典序最小的串
解体思路: 暴力。
#include<stdio.h> #include<iostream> #include<string> #include<vector> #include<algorithm> using namespace std;vector<string> vec;int main() {int n;while(scanf("%d", &n) != EOF) {while( n-- ) {vec.clear();int m;scanf("%d", &m);for(int i = 0; i < m; i++) {string temp;cin >> temp;vec.push_back(temp);}int cnt = 60;string ans;for(int len = 1; len <= 60; len++) { //从长度为1开始循环,一直到长度为60。for(int i = 0; i < cnt; i++) { //当长度为1时,串分成60份,循环60次。//以vec[0]作为母串,i为母串的起始位置,len为母串的长度,构造匹配串str。string str;str = vec[0].substr(i, len);//生成子串函数,i为起始位置,len为子串长度。bool Find = 1; //默认为1,说明都找到了。for(int j = 1; j < m; j++) {int pos = vec[j].find(str);if(pos == string::npos) {Find = 0; // 没找着。break;}}if( Find ) {if(ans.length() == str.length()) {ans = min(ans, str);} else {ans = str;}}}cnt--; //每次大的循环cnt都要减1,因为长度为1的时候分成60份,长度为2的时候分成59份... }if(ans.length() >= 3) {cout << ans << endl;} else {cout << "no significant commonalities\n";}}}return 0; }
转载于:https://www.cnblogs.com/-hsz/archive/2012/08/01/2619192.html
poj 3080 Blue Jeans【字符串】相关推荐
- POJ 3080 Blue Jeans (多个字符串的最长公共序列,暴力比较)
题意:给出m个字符串,找出其中的最长公共子序列,如果相同长度的有多个,输出按字母排序中的第一个. 思路:数据小,因此枚举第一个字符串的所有子字符串s,再一个个比较,是否为其它字符串的字串.判断是否为字 ...
- POJ 3080 Blue Jeans (KMP)
链接:http://poj.org/problem?id=3080 题目: Description The Genographic Project is a research partnership ...
- POJ - 3080 Blue Jeans(暴力+KMP)
题目链接:点击查看 题目大意:给出n组长度为60的字符串,问这n组中最长的公共连续子串是什么,若有多个不同的最长公共子串,输出字典序最小的那个 题目分析:一开始看到这个题目的时候我是没有想到暴力的.. ...
- poj 3080 Blue Jeans
#include <iostream> //KMP+枚举#include<string>using namespace std;#define len 60char str[1 ...
- POJ 3080 Blue Jeans (后缀数组)
题目大意: 求出这些DNA序列中的最长且字典序最小的公共子串. 思路分析: 二分长度的答案,去height中扫描这个长度是否满足,一旦满足就立即输出.这样就能够保证字典序最小了. #include & ...
- POJ 3080 - Blue Jeans
题意: 求所有串的最长公共子串,若有多个输出字典序最小的 分析: 对第一个串的每一个后缀分别与剩下的所有串进行匹配,求得公共子串 对每一个公共子串,记录下最大值即可. 1 #include <i ...
- 暴力枚举(字符串匹配)-Blue Jeans POJ - 3080
暴力枚举(字符串匹配)-Blue Jeans POJ - 3080 题目: Genographic项目是IBM与国家地理学会之间的研究合作伙伴关系,该合作伙伴正在分析数十万贡献者的DNA,以绘制地球的 ...
- Bailian2721 忽略大小写比较字符串大小(POJ NOI0107-16)【字符串】
问题链接:POJ NOI0107-16 忽略大小写比较字符串大小. 忽略大小写比较字符串大小 总时间限制: 1000ms 内存限制: 65536kB 描述 一般我们用strcmp可比较两个字符串的大小 ...
- POJ 3095 Linear Pachinko 字符串模拟
http://poj.org/problem?id=3095 简单字符串模拟 Linear Pachinko Time Limit:1000MSMemory Limit:65536K Descript ...
- Mocha and Red and Blue 模拟字符串
题意 : 由'?' 'B' 'R'组成的字符串,将所有'?'变成'B'或者'R',要求出现'BB'和'RR'数量最少,求最终字符串. 思路 : 找到第一个不是'?'的字符(这里有一个注意点,全是'?' ...
最新文章
- KMP 算法并非字符串查找的优化 [转]
- 我是如何开发一个项目的
- 脚本编辑$RANDOM 和 case语句 (笔记)
- MogDB/openGauss 故障排查思路
- php 请除目录下的日志文件,PHP碎码——删除除指定文件的其他文件及目录
- 转移指令的原理01 - 零基础入门学习汇编语言43
- 重磅!阿里推出国产开源的JDK!这是要干掉oracle??
- SQL语句group by 与order by 执行顺序引发的一场“内斗”
- linux发邮件权限,Linux通过命令行发邮件的步骤
- 路由器有以下几种联网接口
- SonarQube7.4集成P3C
- mysql如何修改root用户的密码
- 一分钟带你解读光纤收发器,秒懂(一)
- 预防新型冠状病毒感染的肺炎口罩使用指南
- 如何用银联易办事POS机缴纳交通违章罚款
- 智慧园区数字孪生可视化解决方案
- 论坛灌水机与注册机问题
- DataCon 2020 Coremail邮件安全竞赛-赛题一满分writeup
- Android adb cannot connect to deamon
- obs直播录屏软件下载使用教程-制作短视频录制视频教程