string='acagdksahbciuaccbbccfdyfavavaaywwusbuyxyxyaodcabgddy' ans=0#最长子串的长度 s1='' def prints1(): global s1,ans if len(s1) > ans: ans = len(s1) print(s1) for i in range(len(string)): for s in string[i:]: len_p=len(s1)/2 le=len(s1) if len(s1)%2: if s1[:int(len_p)]==s1[int(len_p)+1:][::-1] and le>1: prints1() else: if s1[:int(len_p)]==s1[int(len_p):][::-1] and le>1: prints1() s1 += s s1=''
文字列を指定して、最長の回文部分文字列を出力します。回文文字列とは、「aba」「ccbbcc」のように、正の読みと負の読みが同じ文字列を指します。
おすすめ
転載: blog.csdn.net/qq_27900321/article/details/130240241
ランキング