Menu
CoddyTech

Is Subsequence

Otrzymujesz dwa ciągi znaków: s i t. Zwróć true, jeśli możesz przekształcić t w s, usuwając niektóre litery (możesz nie usuwać żadnej), tak aby pozostałe litery zachowały swoją kolejność, a w przeciwnym razie zwróć false. Na przykład ace jest podciągiem abcde, ale aec nim nie jest.

Funkcja

isSubsequence(s: string, t: string) → boolean
sstring
ciąg znaków, którego należy szukać
tstring
ciąg znaków, z którego należy usunąć litery
Zwracaboolean
prawda, jeśli s można odczytać w t w tej samej kolejności, ale z możliwymi przerwami

Ograniczenia

  • 1 ≤ s.length ≤ 3 × 104
  • 1 ≤ t.length ≤ 5 × 104
  • s i t zawierają wyłącznie małe litery alfabetu angielskiego.

Przykłady

Wejście
s = "ace"t = "abcde"
Wyjście
true
Wyjaśnienie
Usuń b i d z abcde, a pozostanie ace w tej samej kolejności.
challenge icon

Pytanie dodatkowe

Jeśli t pozostaje niezmienne i sprawdzasz milion ciągów znaków s pod jego kątem, jak przygotujesz t, aby każde sprawdzenie było szybsze niż odczytanie całego t?

Zresetuj kod
def isSubsequence(s, t):
    # Napisz kod tutaj

Test #1

Test #2

Test #3

Argumenty

s = "ace"
t = "abcde"

Oczekiwany wynik

true