📅  最后修改于: 2023-12-03 14:50:46.600000             🧑  作者: Mango
国际空间研究组织(ISRO)在编程竞赛CS 2011中提出了一道问题,题号为46。这个问题需要编写一个程序来解决。
编写一个程序,判断一个给定的字符串是否是回文串。
输入
racecar
输出
Yes
我们可以使用双指针技术来解决这个问题。首先,定义两个指针,一个指向字符串的开头,一个指向字符串的结尾。然后,逐个比较指针所指的字符是否相等。如果不相等,则字符串不是回文串。如果相等,则继续向中间靠拢,直到两个指针相遇。
def is_palindrome(string):
left = 0
right = len(string) - 1
while left <= right:
if string[left] != string[right]:
return "No"
left += 1
right -= 1
return "Yes"
input_string = input()
print(is_palindrome(input_string))
以上是一个解决ISRO CS 2011问题46的可能解答。这个程序接受一个输入字符串,并通过双指针判断输入字符串是否是回文串。返回 "Yes" 表示是回文串,返回 "No" 表示不是回文串。
请注意,这只是一个示例答案,可能有其他不同的解决方法。