回文序列—Palindrome

Posted 回冬

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了回文序列—Palindrome相关的知识,希望对你有一定的参考价值。

 

1. 生成回文序列——对于输入的整数或字符串,生成一个它的回文,长度是输入的2倍

>>> s = input()
abcde
>>> print(s + ‘‘.join(reversed(s)))
abcdeedcba

 

2. 判断回文序列——使用循环

 

class Solution(object):
    def sum1(self, n):
        pal = str(n)
        size = len(pal)
        j = size - 1
        i = 0
        while i < j:
            if pal[i] == pal[j]:
                i += 1
                j -= 1
            else:
                return False
        return True
if __name__ == "__main__":
    s = Solution()
    print(s.sum1(n = 12))

 

3. 判断回文序列——不使用循环,如果是字符串是回文, 输出1,否则为0

 

>>> pal = "madam"
>>> is_palindrome = int(pal==pal[::-1])
>>> print(is_palindrome)
1

 

以上是关于回文序列—Palindrome的主要内容,如果未能解决你的问题,请参考以下文章

HDU 1513[Palindrome] 回文串

hdu-4632 Palindrome subsequence (回文子序列计数)

HDU 4632 Palindrome subsequence(区间DP求回文子序列数)

hdu4632 Palindrome subsequence 回文子序列个数 区间dp

POJ-1159 Palindrome---变成回文串的最小代价

CF1324B Yet Another Palindrome Problem 题解