1
class Solution:
2
def largestVariance(self, s: str) -> int:
3

4
def maxSubArray(nums: List[int]):
5
ans = -float("inf")
6
runningSum = 0
7
seen = False
8
for x in nums:
9
if x < 0:
10
seen = True
11
runningSum += x
12
if seen:
13
ans = max(ans, runningSum)
14
else:
15
ans = max(ans, runningSum - 1)
16
if runningSum < 0:
17
runningSum = 0
18
seen = False
19
return ans
20

21
f = set()
22
a = ""
23
for x in s:
24
if x not in f:
25
a += x
26
f.add(x)
27

28
n = len(s)
29
res = 0
30
for j in range(len(a) - 1):
31
for k in range(j + 1, len(a)):
32
x = a[j]
33
y = a[k]
34
arr = []
35
for i in range(n):
36
if s[i] != x and s[i] != y:
37
continue
38
elif s[i] == x:
39
arr.append(1)
40
else:
41
arr.append(-1)
42

43
res = max(res, maxSubArray(arr), maxSubArray([-x for x in arr]))
44

45
return res

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0