暴力解法
时间复杂度:O(n^2)
空间复杂度:O(n)
测试用例有问题,AC=75%??? are you sure?
#include <iostream>
#include <vector>
#include <string>
using namespace std;
//判断两个字符串是否为包含关系
bool isIncludeString(string s0, string s1) {
int len0 = s0.size();
int len1 = s1.size();
bool flag;
for (int i = 0; i <= len0; i++) {
for (int j = 0; j < len1; j++) {
if (s0[i] == s1[j]) {
return true;
}
}
}
return false;
}
int main() {
vector<string> vec;
string s;
string c;
while (cin >> s) {
if (s == "end")
{
break;
}
vec.push_back(s);
}
int res = 0;
int maxn = 0;
for (int i = 0; i < vec.size() - 1; i++) {
for (int j = i + 1; j < vec.size(); j++) {
if (isIncludeString(vec[i], vec[j])) {
continue;
}
else {
//更新最大值
maxn = max(res, (int)(vec[i].size() * vec[j].size()));
}
}
}
cout << maxn << endl;
return 0;
}


京公网安备 11010502036488号