Страница: 1 Отображать по:
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

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

Если нажать кнопку с нулем, то текущая комбинация на табло сдвигается на одну позицию вправо (правая цифра при этом исчезает), а в самом левом разряде записывается 0. При нажатии на кнопку с единицей происходит то же самое, только в левый разряд записывается 1.

Известно, какая комбинация цифр сейчас находится на табло, и какую комбинацию требуется получить, чтобы открыть замок. Помогите владельцу нетбука — определите, за какое минимальное количество нажатий на кнопки можно получить требуемую комбинацию.

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

Первая строка содержит текущую последовательность цифр, вторая строка — последовательность, которую требуется получить. Гарантируется, что обе последовательности не пустые, имеют одинаковую длину, не превосходящую 100 000, и состоят только из нулей и единиц. Цифры в строках записаны подряд (без пробелов).

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

Выведите минимальное количество нажатий на кнопки, с помощью которого можно решить поставленную задачу.

Примеры
Входные данные
1101
1011
Выходные данные
2
Входные данные
0000
1111
Выходные данные
4
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
256 megabytes

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

Майор понимал, что у него совсем немного времени до того, как придут и за ним. Поэтому он выбрал некоторый кусок документа и переслал Вам, своему ближайшему соратнику по борьбе со злом (майор боялся, что не хватит времени отправить документ целиком). Сразу после этого к нему ворвались злоумышленники и схватили Пронина. Чтобы не вызывать никаких подозрений, преступники решили не удалять документ, а просто закодировать его некоторым образом. Известно лишь, что каждый символ был заменён ровно на один символ, при этом разные символы перешли в разные, одинаковые – в одинаковые. Известно, что и до, и после перекодировки документ состоял только из символов с ASCII-кодами от 32 до 255 включительно.

Получив часть документа S, Вы немедленно отправились выручать Пронина из беды, но его дом оказался пуст. На его компьютере остался закодированный документ. Ни майор, ни его коллега на связь не выходят. Вы поняли, что единственный способ отыскать их – проникнуть на главную фабрику организации. Для этого необходимо раскодировать весь документ. Прежде чем передать его лингвистам, нужно произвести техническую обработку.

Возможно, что в тексте есть несколько фрагментов, которые могут являться кодом имеющегося у вас фрагмента S. Вы наудачу предположили, что имеющийся у вас фрагмент S в закодированном тексте является самым первым из фрагментов, в которые он мог быть закодирован.

Ваша задача – вычислить, какие символы документа могут быть определены однозначно исходя из приведённых соображений.

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

В первой строке записан перекодированный документ, во второй – часть документа S, оказавшаяся у вас. Обе строки имеют длину не более 106 символов и состоят только из символов с ASCII-кодами от 32 до 255 включительно. Длина S меньше длины документа.

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

Если на каком-то этапе произошла ошибка и входные данные некорректны, выведите Impossible. Иначе запишите в первой строку Possible, а во вторую – результат раскодировки. Символы, которые невозможно определить однозначно, замените на ?.

Система оценки

Подзадача 0 (0 баллов) тесты из условия.

Подзадача 1 (30 баллов) Обе строки состоят только из латинских маленьких букв. Длина каждой строки не превосходит 100. Балл за группу начисляется при прохождении всех тестов группы.

Подзадача 2 (30 баллов) Длина каждой строки не превосходит 1000. Балл за группу начисляется при прохождении всех тестов группы.

Подзадача 3 (40 баллов) Без дополнительных ограничений. В подгруппе 8 тестов каждый из которых оценивается в 5 баллов.

Примеры
Входные данные
ababc
ab
Выходные данные
Possible
abab?
Входные данные
fadacabba
bcc
Выходные данные
Possible
?b?b?bccb
Входные данные
abcdef
ee
Выходные данные
Impossible
Входные данные
cdcd
ab
Выходные данные
Possible
abab

Страница: 1 Отображать по:
Выбрано
:
Отменить
|
Добавить в контест