Can Make Palindrome from Substring LeetCode solution in Python

1
class Solution:
2
def canMakePaliQueries(self, s: str, queries: List[List[int]]) -> List[bool]:
3
hash_map = {s[0]: 1}
4
x = hash_map
5
prefix = [hash_map]
6
for i in range(1, len(s)):
7
x = x.copy()
8
x[s[i]] = x.get(s[i], 0) + 1
9
prefix.append(x)
10

11
result = []
12
for query in queries:
13
cnt = 0
14
for key, value in prefix[query[1]].items():
15
if query[0] > 0:
16
x = value - prefix[query[0] - 1].get(key, 0)
17
else:
18
x = value
19
if x % 2:
20
cnt += 1
21
if cnt - 2 * query[2] > 1:
22
result.append(False)
23
else:
24
result.append(True)
25
return result

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0