Menu
CoddyTech

Longest Repeating Character Replacement

Büyük İngilizce harflerden oluşan bir s dizgesi ve bir k tam sayısı verilir. s içindeki en fazla k konumu seçip her birindeki harfi başka herhangi bir büyük harfle değiştirebilirsin.

Değişikliklerinden sonra aynı harfin tekrarlandığı en uzun alt dizgenin (yan yana duran harf dizisinin) uzunluğunu döndür.

Fonksiyon

characterReplacement(s: string, k: integer) → integer
sstring
büyük harflerden oluşan dize
kinteger
değiştirebileceğiniz en fazla harf sayısı
Döndürürinteger
oluşturabileceğin, aynı harfin tekrarlandığı en uzun alt dizenin uzunluğu

Kısıtlar

  • 1 ≤ s.length ≤ 5 × 104
  • s yalnızca büyük İngilizce harfleri içerir.
  • 0 ≤ k ≤ s.length

Örnekler

Girdi
s = "BAAACAB"k = 1
Çıktı
5
Açıklama
C'yi A olarak değiştirmek, 1'den 5'e kadar olan indislerin AAAAA olarak okunmasını sağlar. Her iki altı harfli pencere de bir B ve C içerir, bu yüzden iki değişiklik gerekir.
challenge icon

Ek soru

s 26 büyük harf yerine herhangi bir karakteri tutabilirse ne değişir?

Kodu sıfırla
def characterReplacement(s, k):
    # Kodu buraya yazın

Test #1

Test #2

Test #3

Argümanlar

s = "BAAACAB"
k = 1

Beklenen Çıktı

5