solution works, but maketrans from string library not accepted
This commit is contained in:
parent
9544d64f85
commit
05ba99b479
@ -1,4 +1,5 @@
|
|||||||
import string
|
import string
|
||||||
|
import math
|
||||||
|
|
||||||
def isPalindrome(s):
|
def isPalindrome(s):
|
||||||
"""
|
"""
|
||||||
@ -6,17 +7,34 @@ def isPalindrome(s):
|
|||||||
:rtype: bool
|
:rtype: bool
|
||||||
"""
|
"""
|
||||||
# Create a translation table to remove uppercase letters and special characters
|
# Create a translation table to remove uppercase letters and special characters
|
||||||
translation_table = str.maketrans("", "", string.ascii_uppercase + string.punctuation + string.whitespace)
|
translation_table = str.maketrans("","", string.punctuation + string.whitespace)
|
||||||
|
|
||||||
# Use the translation table to remove uppercase letters and special characters
|
# Use the translation table to remove uppercase letters and special characters
|
||||||
cleaned_string = s.translate(translation_table)
|
upper_string = s.translate(translation_table)
|
||||||
|
lower_string = upper_string.lower()
|
||||||
half = len(cleaned_string)/2
|
|
||||||
|
|
||||||
|
half = len(lower_string)/2
|
||||||
|
# Round the value down since middle value doesn't matter
|
||||||
|
halfdown = math.floor(half)
|
||||||
|
# print(halfup)
|
||||||
|
# print(halfdown)
|
||||||
first = []
|
first = []
|
||||||
second = []
|
second = []
|
||||||
for i in range(len(half)):
|
# print(lower_string)
|
||||||
|
|
||||||
return cleaned_string
|
for i in range(halfdown):
|
||||||
|
# print(i)
|
||||||
|
# print(lower_string[i])
|
||||||
|
first.append(lower_string[i])
|
||||||
|
|
||||||
|
for j in range(halfdown+1, len(lower_string)):
|
||||||
|
second.insert(0, lower_string[j])
|
||||||
|
|
||||||
|
# print(first)
|
||||||
|
# print(second)
|
||||||
|
if first == second:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
print(isPalindrome("A man, a plan, a canal: Panama"))
|
print(isPalindrome("A man, a plan, a canal: Panama"))
|
||||||
Loading…
Reference in New Issue
Block a user