Maximum Number of Removable Characters LeetCode solution in Python

1
class Solution:
2
def maximumRemovals(self, s: str, p: str, removable: List[int]) -> int:
3
l, r = 0, len(removable)
4

5
def isEnough(k):
6
s_arr = list(s)
7
for i in removable[:k]:
8
s_arr[i] = ""
9
return isSubsequence(p, s_arr)
10

11
def isSubsequence(s, t):
12
t = iter(t)
13
return all(c in t for c in s)
14

15
while l < r:
16
m = (l + r + 1) // 2
17
if isEnough(m):
18
l = m
19
else:
20
r = m - 1
21

22
return l

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0