acm.tuit.uz TATU, Toshkent, 19-iyun 2015 yil A. A и B и ошибки компиляции ограничение по времени на тест 2 секунды ограничение по памяти на тест 64 мегабайт A и B готовятся к олимпиадам про программированию. B очень любит отлаживать свой код. Но перед тем, как запустить решение и начать отладку, код нужно сначала скомпилировать. Изначально компилятор выдавал n ошибок компиляции, каждая из которых обозначается положительным целым числом. После некоторых усилий, B удалось исправить сначала одну, а потом еще одну ошибку. Однако, несмотря на то, что B уверен, что исправил две ошибки, он не может понять, какие именно ошибки компиляции исчезли — компилятор языка, на котором пишет B, каждый раз выдает ошибки в новом порядке! B уверен, что в отличие от многих других языков программирования, ошибки компиляции для его языка программирования не зависят друг от друга, т. е. от исправления одной ошибки, множество остальных ошибок не изменяется. А вы можете помочь B узнать, какие именно две ошибки он исправил? Входные данные Первая строка входных данных содержит целое число n (3 ≤ n ≤ 105) — изначальное количество ошибок компиляции. Вторая строка содержит n целых чисел через 9 пробел a1, a2, ..., an (1 ≤ ai ≤ 10 ) — номера ошибок, выданных компилятором в первый раз. Третья строка содержит n - 1 целых чисел через пробел b1, b2, ..., bn - 1 — номера ошибок, выданных при второй компиляции. Гарантируется, что последовательность в третьей строке содержит все числа второй строки, за исключением ровно одного. Четвертая строка содержит n - 2 целых чисел через пробел с1, с2, ..., сn 2 — номера ошибок, выданных при третьей компиляции. Гарантируется, что последовательность в четвертой строке содержит все числа третьей строки, за исключением ровно одного. Выходные данные Выведите два числа на отдельной строке: номера ошибок компиляции, исчезнувших после того как B внёс первое и второе исправление соответственно. Входные данные Выходные данные 5 8 1 5 8 123 7 123 123 7 5 1 517 6 1 143357 3 37543 4375 acm.tuit.uz TATU, Toshkent, 19-iyun 2015 yil B. Таня и поздравление ограничение по времени на тест 2 секунды ограничение по памяти на тест 64 мегабайт Маленькая Таня решила поздравить папу с Днем рождения и подарить ему открытку. Она уже составила текст для поздравления — строку s длины n, состоящую из прописных и строчных букв латинского алфавита. Таня пока не умеет писать, поэтому она нашла газету и решила вырезать оттуда буквы и наклеить их в открытку, чтобы получилась строка s. В газете записана строка t, состоящая из прописных и строчных букв латинского алфавита. Известно, что длина строки t не меньше длины строки s. Возможно, что в газете не хватает каких-то букв для составления поздравления, а какие-то буквы могут оказаться лишними. Поэтому Таня хочет вырезать из газеты некоторые n букв и составить из них поздравление длины ровно n, чтобы оно было максимально похоже на s. Если буква в заданной позиции совпадает и по значению, и по регистру (в строке s и в той строке, что наклеит Таня), то она радостно кричит «УРА!», а если буква в заданной позиции совпадает только по значению, но не по регистру, то она произносит «ОПА». Таня хочет наклеить такую надпись, чтобы максимальное количество раз прокричать «УРА!», а если это можно сделать несколькими способами, то во вторую очередь она хочет максимизировать количество раз, которое она скажет «ОПА». Вам предстоит помочь Тане в составлении поздравления. Входные данные В первой строке задана строка s (1 ≤ |s| ≤ 2·105), состоящая из прописных и строчных букв латинского алфавита — текст для поздравления, который составила Таня. Во второй строке задана строка t (|s| ≤ |t| ≤ 2·105), состоящая из прописных и строчных букв латинского алфавита — текст, записанный в газете. Запись |a| обозначает длину строки a. Выходные данные Выведите два целых числа, разделенных пробелом, где: первое число — сколько раз Таня прокричит «УРА!» при составлении поздравления, второе число — сколько раз Таня произнесет «ОПА» при составлении поздравления. Входные данные AbC DCbA ABC abc abacaba AbaCaBA Выходные данные 30 03 34 acm.tuit.uz TATU, Toshkent, 19-iyun 2015 yil C. Панграмма ограничение по времени на тест 2 секунды ограничение по памяти на тест 64 мегабайт Слово или предложение на некотором языке называется панграммой, если в нем встречаются все символы алфавита этого языка хотя бы один раз. Панграммы часто используют в типографии для демонстрации шрифтов или тестирования средств вывода различных устройств. Вам дана строка, состоящая из маленьких и больших латинских букв. Проверьте, является ли эта строка панграммой. Считается, что строка содержит букву латинского алфавита, если эта буква встречается в верхнем или нижнем регистре. Входные данные В первой строке записано одно целое число n (1 ≤ n ≤ 100) — количество символов в строке. Во второй строке записана сама строка. Строка содержит исключительно строчные и заглавные латинские буквы. Выходные данные Выведите «YES», если строка является панграммой, и «NO» в противном случае. Входные данные 12 toosmallword Выходные данные NO 35 YES TheQuickBrownFoxJumpsOverTheLazyDog acm.tuit.uz TATU, Toshkent, 19-iyun 2015 yil D. Фабрика ограничение по времени на тест 2 секунды ограничение по памяти на тест 64 мегабайт На одной промышленной фабрике проходит реформа рабочего дня. Директор предложил установить норму производства мифических деталей. Если к началу рабочего дня на заводе находилось x деталей, то по плану к концу должно быть произведено еще (остаток от деления x на m) деталей. К сожалению, пока не нашлось ни одного покупателя на мифические детали, поэтому все произведенные детали остаются на заводе. Совет директоров обеспокоен, не остановится ли производство по такому плану в один прекрасный день (а именно, не настанет ли момент, когда текущее количество деталей на заводе делится на m). По заданному количеству деталей a в первый день и числу m проверьте, остановится ли производство. Входные данные В первой строке содержатся два целых числа a и m (1 ≤ a, m ≤ 105). Выходные данные Выведете «Yes» (без кавычек), если производство может остановиться и «No» иначе. Входные данные Выходные данные 15 No 36 Yes acm.tuit.uz TATU, Toshkent, 19-iyun 2015 yil E. Выражение ограничение по времени на тест 2 секунды ограничение по памяти на тест 64 мегабайт Петя учится в школе и очень любит математику. Уже несколько занятий они с классом проходят арифметические выражения. На последнем уроке учительница написала на доске три положительных целых числа a, b, c. Задание заключалось в том, чтобы расставить между этими числами знаки операций '+' и '*', а также, возможно, скобки. Значение получившегося выражения должно быть как можно больше. Рассмотрим пример: пусть учительница выписала на доску числа 1, 2 и 3. Вот некоторые варианты расстановки знаков и скобок: 1+2*3=7 1*(2+3)=5 1*2*3=6 (1+2)*3=9 Обратите внимание на то, что знаки операций можно вставлять только между a и b, а также между b и c, то есть нельзя менять числа местами. Так, в приведенном примере нельзя получить выражение (1+3)*2. Легко убедиться, что максимальное значение, которое можно получить, — это 9. Ваша задача — по заданным a, b и c вывести, какое максимальное значение выражения можно получить. Входные данные Во входных данных записаны три целых числа a, b и c, каждое в отдельной строке (1 ≤ a, b, c ≤ 10). Выходные данные Выведите максимальное значение выражения, которое можно получить. Входные данные Выходные данные 1 9 2 3 2 10 3 60