Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Longest Nice Substring
Bookmark
Brute Force
Divide & Conquer
Bitmask
Input
Standard
Two halves
Simple nice
Custom
s
=
YazaAay
best =
(none)
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
check every substring; nice = every letter in both cases
best =
(none)
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
check every substring; nice = every letter in both cases
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"Yaz" is not nice
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"YazaAa" is not nice
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"aza" is not nice
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"azaAay" is not nice
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"zaA" is not nice
best =
(none)
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"a" is not nice
best =
aAa
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"A" is not nice
best =
aAa
i
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
j
"a" is not nice
best =
aAa
Y
a
z
a
A
a
y
0
1
2
3
4
5
6
longest nice = "aAa"
algo
master
.
io
Step:
Check every substring of "YazaAay" and keep the longest nice one.
0 / 29
Input
Standard
Two halves
Simple nice
Custom
s
=
YazaAay
0 / 29
algo
master
.
io
Step:
Check every substring of "YazaAay" and keep the longest nice one.