Search⌘ K
AI Features

Longest Repeating Character Replacement

Explore how to solve the longest repeating character replacement problem by applying the sliding window method. This lesson helps you understand how to efficiently find the length of the longest substring where at most k characters can be replaced to create a uniform substring, focusing on uppercase English letters.

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.

Java
usercode > Solution.java
import java.util.*;
public class Solution{
public static int longestRepeatingCharacterReplacement(String s, int k) {
// Replace this placeholder return statement with your code
return -1;
}
}
Longest Repeating Character Replacement