QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 512 MB Total points: 100

#855. Очень разное слово

Statistics

Работа фрилансером еще никогда не была такой простой, думаете вы, лежа в гамаке с напитком и лениво пролистывая следующую страницу с запросами на работу. Внезапно вы замечаете необычный запрос. Я бы даже сказал, странный. Один писатель ищет... слово. Нет, не обычное слово, он отчаянно нуждается в необычном. Вы решаете взяться за эту работу. В конце концов, кто более опытен в программировании всяких странных вещей, чем вы?

На следующий день вы получаете все детали. Запрос поступил от известного автора, который в настоящее время застрял на написании своего следующего романа. Прямо скажем, застрял основательно... до такой степени, что последний сезон сериала, основанного на его работе, уже вышел в эфир. После подписания соглашения о неразглашении вы узнаете, что правда сложнее, чем казалось. Книга на самом деле была почти готова уже несколько лет, но с тех пор автор продолжает переписывать одну главу, которую никак не может довести до ума. Глава вращается вокруг важного пророчества, которое задумано как очень запутанная игра слов из трех слов одинаковой длины.

Вы знаете, что первое слово $s$ лексикографически меньше последнего слова $t$, и они имеют одинаковое количество символов. Ваш клиент хочет найти слово $x$ той же длины, которое лексикографически строго больше $s$ и строго меньше $t$, и в то же время содержит первую букву имени обещанного героя: символ $K$. Возможно, что такого слова $x$ не существует (что полностью объяснило бы все задержки), но... кто знает?

Входные данные

Первая строка входных данных содержит количество тестовых случаев $z$ ($1 \le z \le 100\,000$). Далее следуют описания тестовых случаев.

Первая строка каждого тестового случая содержит одно целое число $n$ — длину слов $s$ и $t$ ($1 \le n \le 25\,000$) — и строчную букву $K$. Следующие две строки содержат слова $s$ и $t$, состоящие из строчных букв английского алфавита.

Сумма $n$ по всем тестовым случаям не превышает $100\,000$.

Выходные данные

Для каждого тестового случая выведите одну строку с одним словом: любое слово $x$ длины $n$, состоящее из строчных букв английского алфавита, которое удовлетворяет требованиям, или «NO», если такого слова не существует.

Примеры

Входные данные 1

4
10 m
christmasa
christmasx
6 m
spring
winter
21 a
ithinkthereforeisleep
ithinkthereforeithink
3 z
tcs
tcz

Выходные данные 1

christmass
summer
ithinkthereforeistand
NO

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.