Задачи второго этапа
Всероссийской олимпиады школьников по информатике
(10-11 класс, 2001-2002 учебный год, Пермская область)

 

Технические требования:

Входной файл: INPUT.TXT          Выходной файл: OUTPUT.TXT

Ограничение по времени: 5 секунд (на компьютере с процессором Pentium-100).

1) «Матрёшки» (составитель — А.П. Шестаков, оппонент — Е.В. Брызгалов) — 10 баллов.

Множество из N (N <= 15) прямоугольных параллелепипедов задано измерениями этих параллелепипедов (длина и ширина основания, высота).

Нужно сделать так, чтобы параллелепипеды были вложены друг в друга как «матрешки». При вложении стороны параллелепипедов располагаются параллельно и перпендикулярно друг другу; параллелепипеды могут быть повёрнуты, чтобы разместиться в очередном.

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

Примечание. Параллелепипеды ограничены каркасом ненулевой толщины. Это означает, что, например, параллелепипед размером 10 × 11 × 12 не может быть помещён в параллелепипед размером 10 × 11 × 13.

Формат входных данных:
первая строка — N; в каждой из следующих N строк — три действительных числа — измерения соответствующего параллелепипеда.

Формат выходных данных:
Строка, содержащая N чисел, — номера параллелепипедов исходной последовательности в порядке вложения параллелепипедов друг в друга, начиная с большего, или сообщение «NO».

Пример 1 входных данных

3
1 2 3
10 30 20
5 6 8

Пример 1 выходных данных

2 3 1

Пример 2 входных данных

3
1 2 40
10 30 20
5 6 8

Пример 2 выходных данных

NO

2) Система счисления (автор-составитель — Брызгалов Е.В., оппонент — Еремин Е.А.) — 10 баллов.

Задан пример на сложение двух чисел, выполненный в позиционной системе счисления с основанием, не превосходящим 36. Запись примера имеет вид A + B = C, где A, B и C — числа, записанные в данной системе счисления.

Требуется написать программу, определяющую минимальное основание этой системы.

Технические замечания:
Цифры в системах, основание которых больше 10, обозначаются латинскими заглавными буквами: A — 10, B — 11, …, Z — 35.

Операнды и результат — натуральные числа, десятичная запись которых не превосходит 30000.

Формат входных данных:
одна строка, содержащая запись примера.

Формат выходных данных:
Одно число — минимальное основание системы счисления, при котором входное равенство является верным.

Пример 1 входных данных

2+2=4

Пример 1 выходных данных

5

Пример 2 входных данных

3A+2B=60

Пример 2 выходных данных

21

3) Встреча исполнителей (автор-составитель — Еремин Е.А., оппонент — Брызгалов Е.В.) — 12 баллов.

На квадратном клетчатом поле 10 × 10 находятся два одинаковых исполнителя: исполнитель А — в левом нижнем углу с координатами (0, 0), и исполнитель В — в правом верхнем углу с координатами (9, 9).

Система команд исполнителей состоит из следующих команд:
R — сместиться на соседнюю клетку вправо;
L — сместиться на соседнюю клетку влево;
U — сместиться на соседнюю клетку вверх;
D — сместиться на соседнюю клетку вниз.

Для сокращения записи алгоритмов разрешается объединять одинаковые следующие друг за другом команды в виде NK, где 1 < N < 10 — число повторений команды, а K — повторяемая команда (например, запись 4U эквивалентна четырем командам U, т.е. UUUU).

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

Каждый исполнитель получает свою собственную программную строку (считать, что она не содержит синтаксических ошибок) и исполняет ее. Будем предполагать, что на каждом шаге алгоритма исполнители выполняют по одной команде. Тогда описанная процедура закончится одним из трех способов:
1) исполнители встретятся на одной клетке поля и остановятся: в этом случае необходимо напечатать номер шага алгоритма и координаты клетки встречи X и Y;
2) у обоих исполнителей закончатся строки с программами, но встреча не состоится: в этом случае необходимо вывести на экран слово "no" — нет решения;
3) любой исполнитель выйдет за пределы поля: в этой аварийной ситуации надо напечатать слово "error" — ошибка.

Технические замечания:
1. Длина каждой из двух вводимых строк с алгоритмами для исполнителей А и В не превышает 10 символов;
2. Строки не содержат никаких других символов, кроме цифр и букв R, L, U и D.

Формат входных данных:
2 строки, содержащие программы для исполнителей A и B.

Формат выходных данных:
Три числа — номер шага алгоритма, на котором произошла встреча и ее координаты, или сообщения no либо error.

Пример 1 входных данных:

9U9R
9L9U

Пример 1 выходных данных:

9 0 9

Пример 2 входных данных:

U4U
D4D

Пример 2 выходных данных:

no

Пример 3 входных данных:

U2U
D3U

Пример 3 выходных данных:

error

4) Неубывающие последовательности (автор-составитель — Гладков В.П., оппонент — Шестаков А.П.) — 18 баллов.

Пусть все неубывающие последовательности длины k (1 < k <= 25), содержащие числа из отрезка [1; k], такие, что соседние элементы отличаются не более, чем на 1, расположены в лексикографическом порядке. Например, для k = 4, получаем: 1111, 1112, 1122, 1123, 1222, 1223, 1233, 1234.

Требуется написать программу, которая по заданным k и n выводит n-ую последовательность длины k или указывает, что последовательности с таким номером не существует.

Формат входных данных:
В единственной строке входного файла содержатся два целых числа, разделенные пробелом: k n. (1 < k <= 25, 1 <= n <= 230.)

Формат выходных данных:
В единственной строке должна содержаться искомая строка или быть записана фраза «NO».

Пример входных данных:

4 5

Пример выходных данных:

1222

5) Кубик (автор-cоставитель — Брызгалов Е.В., оппонент — Деменев А.Г.) — 20 баллов.

Фрагмент кубической кристаллической решёткиДан фрагмент кубической кристаллической решетки с длиной ребра N. Очевидно, что кратчайший маршрут из одной вершины куба в противоположную, проложенный по ребрам решетки, имеет длину 3*N (на рисунке приведен один из возможных маршрутов для N = 2).

Требуется написать программу, определяющую количество таких маршрутов.

Формат входных данных:
Одна строка, содержащая натуральное число N <= 100.

Формат выходных данных:
Одна строка, содержащая число всевозможных кратчайших маршрутов.

Пример входных данных:

2

Пример выходных данных:

90

6) Четырехугольник (автор-составитель — Брызгалов Е.В., оппонент — Деменев А.Г.) — 30 баллов.

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

Требуется написать программу, определяющую количество узлов сетки, которые являются внутренними точками четырехугольника (узлы-вершины и узлы, лежащие на сторонах четырехугольника, внутренними точками НЕ являются).

Четырехугольник задается координатами вершин, перечисленных в порядке обхода по (или против) часовой стрелки. Координаты по абсолютной величине не превосходят 10000.

Формат входных данных:
4 строки, каждая из которых содержит два целых числа, разделенных ровно одним пробелом, — координаты одной из вершин четырехугольника.

Формат выходных данных:
Одна строка, содержащая число узлов сетки внутри четырехугольника.

Пример входных данных:

3 3
4 4
3 5
2 4

Пример выходных данных:

1

 

© Пермский областной Оргкомитет олимпиад школьников по информатике, 2001

 


Рейтинг ресурсов УралWeb

Сайт создан в системе uCoz