首页 > 试题广场 >

小O的字符串重排

[编程题]小O的字符串重排
  • 热度指数:66 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\,\,\,\,\,\,\,\,\,\,小O有一个字符串 s ,她希望重新排列这个字符串,并改变字符的大小写,使得新的字符串包含尽可能多的字符串 a 或者字符串 b。请问小O最多能包含多少个子串 a子串 b 。
\,\,\,\,\,\,\,\,\,\,如果字符串 t 可以通过从字符串 s 的开头删除若干(可能为零或全部)字符以及从结尾删除若干(可能为零或全部)字符得到,则字符串 t 是字符串 s子串

输入描述:
第一行输入一个字符串 s ,仅包含小写字母。
第二行输入一个字符串 a ,首字母大写,其余小写。
第三行输入一个字符串 b ,首字母大写,其余小写。
除此之外,保证 1 \leq |s|, |a|, |b| \leq 10^5 ,即保证每个字符串至多由 10^5 个字符构成


输出描述:
在一行上输出一个正整数,表示最多能包含多少个子串 a 和子串 b 。
示例1

输入

abcdefg
Abc
Fge

输出

2

说明

将字符串修改成 AbcdFge,包含两个子串 Abc 和 Fge。

这道题你会答吗?花几分钟告诉大家答案吧!