AcWing 778. 字符串最大跨距
原题链接
困难
作者:
citrus_7
,
2021-02-08 14:41:39
,
所有人可见
,
阅读 306
#include <iostream>
using namespace std;
int main()
{
string s, s1, s2;
char c;
while (cin >> c, c != ',') s += c;
while (cin >> c, c != ',') s1 += c;
while (cin >> c) s2 += c;
int l = 0;
while (l + s1.size() <= s.size())
{
int k = 0;
while (k < s1.size())
{
if (s[l + k] != s1[k]) break;
k ++ ;
}
if (k == s1.size()) break;
l ++ ;
}
int r = s.size() - s2.size();
while (r >= 0)
{
int k = 0;
while (k < s2.size())
{
if (s[r + k] != s2[k]) break;
k ++ ;
}
if (k == s2.size()) break;
r -- ;
}
l += s1.size() - 1;
if (l >= r) cout << "-1" << endl;
else cout << r - l - 1 << endl;
return 0;
}