1617: Добавити i видалити

Переглянути як PDF

Надіслати розвʼязок

Бали: 18,00 (частково)
Ліміт часу: 1.0s
Ліміт памʼяті: 64M

Автор:
Тип задачі
Дозволені мови
Assembly, Awk, Brain****, C, C++, Java, mono C#, Pascal, Perl, Python, Sed, Text, vb

Задаються рядки ~s~ та ~t~, якi мiстять лише малi символи англiйського алфавiту.

Над рядком ~s~ можна виконувати такi операцiї:

  • додавати до кiнця рядка один символ;

  • видалити останнiй символ у рядку (якщо видалити символ порожнього рядка, то утвориться порожнiй рядок).

Визначте, чи можливо за ~k~ описаних операцiй iз рядка s отримати рядок ~t~.

Формат вхiдних даних

Перший рядок мiстить ~s~ ~(1 \le |s| \le 100)~ - початковий рядок.

Другий рядок мiстить рядок ~t~ ~(1 \le |t| \le 100)~ - бажаний рядок.

Третiй рядок мiстить цiле число ~k~ ~(1 \le k \le 100)~ - кiлькiсть операцiй.

Формат вихiдних даних

Виведiть ~Yes~, якщо можна отримати рядок ~t~ точно за ~k~ операцiй над рядком ~s~. В iншому випадку вивести ~No~.

Приклад вхідних даних

aba
aba
7

Приклад вихідних даних

Yes

Приклад вхідних даних

ashley
ash
2

Приклад вихідних даних

No

Коментарі

Будь ласка, прочитайте правила перед коментуванням.



  • 0
    QuadRaliOn  прокоментовано 11 Березень 2023, 19:41

    чому в першому кейсі відповідь так, якщо кількість операцій над рядком непарна то ми завжди або видалимо один символ або додамо лишній. Якщо за хід можна не виконувати будь які операції то чому це не вказано в умові?


    • 0
      zvit  прокоментовано 20 Березень 2023, 11:27

      можна видалити 3 символи, видалити порожній рядок, потім вставити 3 символи