Menu
CoddyTech

Is Subsequence

Даны две строки: s и t. Верните true, если можно превратить t в s, удалив некоторые её буквы (возможно, ни одной) и сохранив порядок оставшихся букв, и false в противном случае. Например, ace является подпоследовательностью abcde, а aec — нет.

Функция

isSubsequence(s: string, t: string) → boolean
sstring
строка для поиска
tstring
строка, из которой нужно удалить буквы
Возвращаетboolean
true, если s можно прочитать внутри t по порядку, возможно, с пропусками

Ограничения

  • 1 ≤ s.length ≤ 3 × 104
  • 1 ≤ t.length ≤ 5 × 104
  • s и t содержат только строчные английские буквы.

Примеры

Ввод
s = "ace"t = "abcde"
Вывод
true
Пояснение
Удалите b и d из abcde, и останется ace в том же порядке.

lock icon+20 скрытых тестов при отправке

challenge icon

Дополнительный вопрос

Предположим, t остаётся неизменным, а тебе нужно проверить относительно него миллион разных строк s. Как подготовить t, чтобы каждая проверка выполнялась быстрее, чем повторное чтение всего t?

Сбросить код
def isSubsequence(s, t):
    # Напишите код здесь
Тестовые случаи

Случай 1

Случай 2

Случай 3

Ввод

s = "ace"
t = "abcde"

Ожидается

true