Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Longest Happy Prefix
Bookmark
Brute Force
Rolling Hash
KMP (LPS)
Input
"level" → "l"
"ababab" → "abab"
"acbabc" → ""
"aaaa" → "aaa"
Custom
s
=
level
s
l
0
e
1
v
2
e
3
l
4
k = -
result = ""
s
l
0
e
1
v
2
e
3
l
4
k = -
result = ""
s
l
0
e
1
v
2
e
3
l
4
k = 4
result = ""
prefix "leve" vs suffix "evel"
s
l
0
e
1
v
2
e
3
l
4
k = 4
result = ""
length 4 fails, try one shorter
s
l
0
e
1
v
2
e
3
l
4
k = 3
result = ""
prefix "lev" vs suffix "vel"
s
l
0
e
1
v
2
e
3
l
4
k = 3
result = ""
length 3 fails, try one shorter
s
l
0
e
1
v
2
e
3
l
4
k = 2
result = ""
prefix "le" vs suffix "el"
s
l
0
e
1
v
2
e
3
l
4
k = 2
result = ""
length 2 fails, try one shorter
s
l
0
e
1
v
2
e
3
l
4
k = 1
result = ""
prefix "l" vs suffix "l"
s
l
0
e
1
v
2
e
3
l
4
k = 1
result = "l"
"l" is both a prefix and a suffix
s
l
0
e
1
v
2
e
3
l
4
k = 1
result = "l"
longest happy prefix = "l"
algo
master
.
io
Step:
Find the longest proper prefix of "level" that is also a suffix
0 / 13
Input
"level" → "l"
"ababab" → "abab"
"acbabc" → ""
"aaaa" → "aaa"
Custom
s
=
level
0 / 13
algo
master
.
io
Step:
Find the longest proper prefix of "level" that is also a suffix