Uppgift
Givet $2$ strängar, skriv ett program som hittar den längsta strängen som ingår i båda strängarna och anger dess längd.
Här sägs en sträng $s$ ingå i en sträng $t$ om $s$ förekommer sammanhängande i $t$. Den tomma strängen, det vill säga strängen med längd $0$, ingår i varje sträng. Till exempel innehåller strängen ABRACADABRA följande strängar: ABRA, RAC, D, ACADABRA, ABRACADABRA, den tomma strängen och så vidare. Å andra sidan innehåller strängen ABRACADABRA inte följande strängar: ABRC, RAA, BA, K och så vidare.
Förklarande exempel
Exempel $1$: När ABRACADABRA och ECADADABRBCRDARA ges som strängar finns bland de strängar som ingår i båda CA, CADA, ADABR, den tomma strängen med flera. Den längsta av dem är ADABR, och dess längd är $5$. Positionerna för ADABR i de $2$ strängarna visas i Figur $2\text{-}1$.
$$\begin{aligned} \texttt{ABRAC}&\underline{\texttt{ADABR}}\texttt{A} \\ \texttt{ECAD}&\underline{\texttt{ADABR}}\texttt{BCRDARA} \end{aligned}$$
Figur $2\text{-}1$: Positionerna för ADABR i strängarna i Exempel $1$
Exempel $2$: När UPWJCIRUCAXIIRGL och SBQNYBSBZDFNEV ges som strängar är den enda strängen som ingår i båda den tomma strängen, och dess längd är $0$.
Indata
Indata består av $2$ rader: på den $1$:a raden ges den $1$:a strängen, och på den $2$:a raden ges den $2$:a strängen. Strängarna består av stora engelska bokstäver, och längden på varje sträng är minst $1$ och högst $4\,000$.
Av testdata är för $30\%$ av poängen längden på varje sträng minst $1$ och högst $50$.
Utdata
Skriv ut $1$ rad som enbart innehåller längden på den längsta strängen som ingår i båda de $2$ givna strängarna.
Exempel på indata och utdata
Indata och utdata som motsvarar exemplen ovan är följande.
Exempelindata 1
ABRACADABRA ECADADABRBCRDARA
Exempelutdata 1
5
Exempelindata 2
UPWJCIRUCAXIIRGL SBQNYBSBZDFNEV
Exempelutdata 2
0