ZOJ-1374
2014-07-18 22:52
253 查看
找N个字符串的最长连续子串,这里我是用暴力枚举水过的。。好土
#include<iostream> #include<string> #include<vector> #include<algorithm> #include<set> using namespace std; namespace { bool cmp(const string &s1, const string &s2) { return s1.size() < s2.size(); } void put(const string &s, set<string> &S) { for (size_t i = 0; i < s.size(); i++) for (size_t len = 1; len + i <= s.size(); len++) S.insert(s.substr(i, len)); } } int main() { int t; cin >> t; vector<string> V; set<string> S; while (t--) { int n; cin >> n; V.clear(); string s; for (int i = 0; i < n; i++) { cin >> s; V.push_back(s); } sort(V.begin(), V.end(), cmp); S.clear(); put(V[0], S); reverse(V[0].begin(), V[0].end()); put(V[0], S); size_t max = 0; for (set<string>::iterator it = S.begin(); it != S.end(); it++) { bool find = true; for (size_t i = 1; i < V.size(); i++) { if (V[i].find(*it) == string::npos) { reverse(V[i].begin(), V[i].end()); if (V[i].find(*it) == string::npos) { find = false; break; } } } if (find && (*it).size() > max) max = (*it).size(); } cout << max << endl; } return 0; }
相关文章推荐
- ZOJ Problem 1374 Substrings
- poj 1226, hdoj1238, zoj 1374 Substrings
- zoj 1374 &&2784&&2907 字符串搜索
- zoj 1139 || poj 1468 Rectangles
- ZOJ2770(差分约束系统学习)
- zoj 1025 || poj 1065 || hdoj1051 Wooden Sticks
- ZOJ_1009
- zoj 1974 || poj 1940 Polygon Programming with Ease
- ZOJ 3644 Kitty's Game(数论+DP)
- ACM学习历程——ZOJ 3822 Domination (2014牡丹江区域赛 D题)(概率,数学递推)
- ZOJ - 3878 Convert QWERTY to Dvorak (暴力)水&坑
- zoj 2500 求两球体积并
- zoj 1456 Minimum Transport Cost
- zoj 1008 dfs 一种巧妙的剪枝
- ZOJ 3946 Highway Project(最短路)
- zoj 2965 Accurately Say "CocaCola"!
- Zoj 3529 A Game Between Alice and Bob (数学_博弈)
- [ZOJ 3662] Math Magic (动态规划+状态压缩)
- ZOJ 3932 Handshakes(翻译水题)
- hoj 10511 、zoj 1962 ——100位数内的fibonacci