Сопоставление с шаблоном

Hard
Проверьте, совпадает ли строка s с шаблоном p целиком.
'?' в шаблоне означает ровно один любой символ;
'*' — любую последовательность символов, в том числе пустую.

Обычные буквы должны совпадать точно. Верните true или false.

Примеры:

Вход: {"s": "aa", "p": "a"}
Выход: false
Объяснение: s='aa', p='a': шаблон без '*' покрывает только один символ, строка длиннее → false.
Вход: {"s": "aa", "p": "*"}
Выход: true
Объяснение: s='aa', p='*': одна звезда может покрыть всю строку → true.
Вход: {"s": "cb", "p": "?a"}
Выход: false
Объяснение: s='cb', p='?a': первый символ подойдёт под '?', но второй должен быть 'a', а стоит 'b' → false.

Ограничения:

0 <= s.length, p.length <= 2000

Теги:

Строки Динамическое программирование

Комментарии (0)

Войдите, чтобы оставить комментарий

Пока нет комментариев. Будьте первым!