最大跨距

测试数据来自 system/2815

作业已超过截止时间,您无法递交本题目。

时间限制:1秒  内存限制:256M


【题目描述】

  有三个字符串 \(S,S_1,S_2\),其中,\(S\) 长度不超过 300,\(S_1\) 和 \(S_2\) 的长度不超过 10。想检测 \(S_1\) 和 \(S_2\) 是否同时在 \(S\) 中出现,且 \(S_1\) 位于 \(S_2\) 的左边,并在 \(S\) 中互不交叉(即,\(S_1\) 的右边界点在 \(S_2\) 的左边界点的左侧)。计算满足上述条件的最大跨距(即,最大间隔距离:最右边的 \(S_2\) 的起始点与最左边的 \(S_1\) 的终止点之间的字符数目)。如果没有满足条件的 \(S_1\),\(S_2\) 存在,则输出 -1。

  例如,\(S =\) "abcd123ab888efghij45ef67kl",\(S_1=\)"ab",\(S_2=\)"ef",其中,\(S_1\) 在 \(S\) 中出现了 2 次,\(S_2\) 也在 \(S\) 中出现了 2 次,最大跨距为:18。

【输入格式】

  三个串:\(S, S_1, S_2\),其间以逗号间隔(注意,\(S, S_1, S_2\) 中均不含逗号和空格);

【输出格式】

  \(S_1\) 和 \(S_2\) 在 \(S\) 最大跨距;若在 \(S\) 中没有满足条件的 \(S_1\) 和 \(S_2\),则输出-1。

【输入输出样例】

 Input

abcd123ab888efghij45ef67kl,ab,ef

 Output

18

【来源】

  Mr.he**

字符串练习题(一)

未认领
状态
已结束
题目
10
开始时间
2023-11-05 02:00
截止时间
2023-11-25 23:59
可延期
24.0 小时