#P0381. 最长公共子串

最长公共子串

题目描述

给定两个字符串s1和s2,求他们的最长公共子串(Longest Common Substring)。

输入格式

两行,第一行是字符串s1,第二行是字符串s2

输出格式

两行,第一行输出最长公共子串的长度,第二行输出最长公共子串(若有多个最长公共子串,则输出字典序最小的一个);

若不存在最长公共子串,输出0即可。

样例

abcdf
xfbcde
3
bcd
abcd
efg
0
aaacccbbb
bbbaaa
3
aaa

数据范围

对于100%100\%的数据:1s1,s250001 \le |s1|,|s2| \le 5000,且s1s1s2s2仅含有大小写字母,不含空格。