Многопрофильная олимпиада - РТУ МИРЭА
←
→
Транскрипция содержимого страницы
Если ваш браузер не отображает страницу правильно, пожалуйста, читайте содержимое страницы ниже
Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Информация о сдаче решений
Необходимо использовать стандартный поток ввода и стандартный поток
вывода (консоль). В конце каждой программы допускается символ переноса строки,
но он не обязателен. Необходимо выводить в поток вывода ровно то, что требуется
в задании.
Задача A. Перестановки
Даны две последовательности целых чисел, требуется выбрать из них все
четные и нечетные числа и вывести их на консоль в определенном порядке.
Сначала необходимо вывести все четные числа второй последовательности
в порядке неубывания, затем все числа первой последовательности в порядке
невозрастания.
Формат входных данных
В первой строке вводится первая последовательность чисел, разделенных
пробелом. Во второй строке – вторая последовательность.
Все числа в последовательностях лежат в диапазоне [ -1 000 000; 1 000 000].
Формат выходных данных
На вход необходимо подать две строки, первая – четные числа второй
последовательности в порядке неубывания. Вторая – числа первой
последовательности в порядке невозрастания.
Пример
Стандартный ввод Стандартный вывод
15 53
1 2 3 4 5 4 3 8 3 1 5 10 8 8 9
10 12
9876564321
1Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Задача B. Двумерный массив
Необходимо составить матрицу размерностью N x N по схеме,
представленной в примерах на нескольких размерах двумерной матрицы. На вход
подается четное число N – размер стороны матрицы, необходимо заполнить массив
значениями в соответствии с шаблоном.
Формат входных данных
Вводится единственная строка с четным числом N - размером стороны
матрицы.
2Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Задача C. Сокращение
На вход подается строка с часто повторяющимися буквами. Необходимо
сжать эту строку следующим образом: перед буквой пишется количество
повторений этой буквы в строке, сама буква при этом пишется один раз. Таким
образом необходимо уменьшить длину строки.
Напишите программу, которая по исходной строке выведет ее сокращенную
версию.
Формат входных данных
В единственной строке вводится последовательность латинский букв.
Максимальная длина строки – 100 000 символов.
Формат выходных данных
Вывести единственную строку, содержащую сокращенную версию исходной
строки.
Пример
Стандартный ввод Стандартный вывод
BBBCCCGGFFDYHFCHHHRREEOOKKKK 3B3C2G2FDYHFC3H2R2E2O4K
W W
3Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Задача D. Калькулятор
Необходимо написать программу-калькулятор, которая будет выполнять
операции над числом, поданным на вход в первой строке.
Изначально вводится целое число, которое будет изменяться по введенным
далее командам. В последней строке обязательно будет “.”, что будет сигналом
прекращения работы программы.
Необходимо написать программу, которая по заданным командам, вводимым
с консоли, будет производить манипуляции с целым числом.
Доступные команды:
+ [value] – прибавляет к числу значение value;
- [value] – вычитает из числа значение value;
* [value] – умножает число на значение value;
/ [value] – оставляет целую часть от деления числа на value;
print – выводит число на консоль;
. – завершающая команда.
Нет необходимости выводить вычисленное число при завершении
программы. Вывод производится только по команде “print”.
Формат входных данных
На первой строке подается число N, с которым будут производиться
манипуляции.
Далее в отдельных строках вводятся команды, гарантируется наличие
команды “.”. Параметры команд разделены пробелом.
Гарантируется, что в процессе вычислений значение числа не выйдет
за пределы диапазона [-2 000 000;2 000 000].
-1 000 000Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Пример
Стандартный ввод Стандартный вывод
500 950
+ 700 73
- 250 247
print
/ 13
print
*4
- 45
print
.
5Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Задача E. Преобразование строки
На вход подается две строки. Первая – исходная строка, которую необходимо
подвергнуть преобразованиям. Вторая – набор правил преобразования первой
строки. Необходимо применить к входной строке все перечисленные
преобразования, и вывести результат.
Например, если первая строка: “AABBCEEJD”, а вторая строка: “AA-B;CEE-
J;JJ-D”, необходимо последовательно применить написанные правила, каждое новое
применять к строке, получившийся после предыдущего преобразования. На выходе
получится следующий результат: “BBBDD”
Формат входных данных
В первой строке подается последовательность латинских букв, которую
необходимо преобразовать.
Во второй строке подается последовательность правил преобразования,
в формате “A-B”, разделенные точкой с запятой. Где “A” – подстрока, все вхождения
которой необходимо найти и заменить на “B”. “A” – обязательно непустая строка,
при этом B может быть пустой строкой. И “A” и “B” могут содержать любые
символы, кроме “-“ и “;”.
Формат выходных данных
Необходимо одной строкой вывести полученный после преобразований
результат.
Пример
Стандартный ввод Стандартный вывод
AABBCEEJD BBBDD
AA-B;CEE-J;JJ-D
CBDHEYYFHSBCGHFYTS HELLO WORLD
CB-D;DD-;Y-L;F-O;HS- ;OL-
ORL;BCGH-W;TS-D
6Многопрофильная олимпиада
РТУ МИРЭА
Очный отборочный тур
Информатика
Задача F. Торговый автомат
В торговом центре стоит торговый автомат, перед которым постоянно
ставится задача выдать сдачу определенной суммы. В распоряжении автомата
неограниченное количество монет номиналом в 1, 4, 6 и 9 условных единиц.
При выдаче сдачи цель автомата - выдать сдачу минимальным количеством монет.
Необходимо написать программу, которая по необходимой сумме определяет,
какие монеты необходимо использовать для того, чтобы выдать сдачу минимально
возможным количеством монет.
Формат входных данных
В первой строке задается число N, сумма, которую необходимо выдать.
2Вы также можете почитать