Search⌘ K
AI Features

Longest Repeating Character Replacement

Explore the sliding window technique to solve the longest repeating character replacement problem. Understand how to efficiently find the longest substring where characters can be replaced up to a limit, and apply this approach to optimize your coding interview solutions.

Statement

Given a string, s, and an integer, k, find the length of the longest substring in s, where all characters are identical, after replacing, at most, k characters with any other uppercase English character.

Constraints:

  • 11 \leq s.length 103\leq 10^3

  • s consists of only uppercase English characters.

  • 00 \leq k \leq s.length

Examples

canvasAnimation-image
1 / 4

Understand the problem

Let’s take a moment to make sure you’ve correctly understood the problem. The quiz below helps you check if you’re solving the correct problem:

Longest Repeating Character Replacement

1.

What is the correct output for the following input values?

s=s = “ABAB”, k=2k = 2

A.

1

B.

2

C.

3

D.

4


1 / 3

Figure it out!

We have a game for you to play. Rearrange the logical building blocks to develop a clearer understanding of how to solve this problem.

Sequence - Vertical
Drag and drop the cards to rearrange them in the correct sequence.

1
2
3
4
5

Try it yourself

Implement your solution in the following coding playground.

Need a nudge?

Explore these hints—each one is designed to guide you a step closer to the solution.

C++
usercode > main.cpp
int LongestRepeatingCharacterReplacement(const std::string& s, int k) {
// Replace this placeholder return statement with your code
return -1;
}
Longest Repeating Character Replacement