ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила

Timus Top Coders: Second Challenge

Описание     Задачи     Отправить на проверку     Состояние проверки     Результаты
Соревнование завершено

G. Свобода слова

Ограничение времени: 1.0 секунды
Ограничение памяти: 64 МБ
В албанском языке любое высказывание представляет собой последовательность слов (не обязательно различных), отделяемых друг от друга разделителями - пробелами, знаками препинания и т.д. Известный албанский либерал Мухаммед Тахир-оглы был глубоко убеждён, что эти разделители ограничивают свободу слова. Он решил провести языковую реформу и тем самым избавиться от них. После реформы высказывания в албанском языке будут состоять из слов, ничем не отделённых друг от друга.
Против этой инициативы выступил знаменитый албанский консерватор Ахмед Касым-бей. Он указал на то, что после реформы в албанском языке вполне могут появиться высказывания, одинаковые по написанию, но образованные различными последовательностями слов - а потому совершенно разные по значению. Безусловно, такая неоднозначность ущемляет свободу слова. Теперь Ахмед мечтает найти хотя бы одно такое высказывание, чтобы поставить жирный крест на замыслах своего политического противника. Он открыл словарь албанского языка, обнаружил в нём N различных слов S[i] и понял, что в одиночку ему не справиться.

Исходные данные

Первая строка содержит целое число N (1 ≤ N ≤ 100). Каждая из следующих N строк содержит слово S[i]. Каждое слово имеет длину от 1 до 100 символов и состоит из малых латинских букв.

Результат

Выведите "NO", если искомое высказывание не существует. Иначе в первой строке выведите "YES", а во второй строке выведите это высказывание. Длина высказывания не должна превышать 20000 символов. Если задача имеет несколько решений, можно вывести любое из них.

Пример

исходные данныерезультат
5
ab
acb
bc
abac
babbc
YES
abacbabbc

Замечания

В примере высказывание "abacbabbc" может быть образовано последовательностями слов "abac"+"babbc" и "ab"+"acb"+"ab"+"bc".
Автор задачи: Никита Рыбак, Илья Гребнов, Дмитрий Ковалёв
Источник задачи: Timus Top Coders: Second Challenge
Чтобы отправить решение этой задачи на проверку перейдите в Архив задач: 1455. Свобода слова