SSS の iii 番目の文字を SiS_iSi とします。
求める部分列を SiSjSkSl,(i<j<k<l)S_iS_jS_kS_l,(i<j<k<l)SiSjSkSl,(i<j<k<l) とします。
Si=SkS_i = S_kSi=Sk が成り立つ時、 Sj=SlS_j = S_lSj=Sl の組み合わせがどれだけ作れるかを数えます。
i<j<ki < j < ki<j<k での各文字の出現個数と、 k<l≦nk < l \leqq nk<l≦n での文字の出現個数をカウントしておきます。
そして、 Si=SkS_i = S_kSi=Sk が成り立つ時に限り、事前に数えておいた Sj=SlS_j = S_lSj=Sl のペアの個数を求めればよいです。