Олимпиада по информатике Белоруссии (1991 г.)

Задача 1

Нижняя левая и верхняя правая вершины прямоугольника A имеют координаты (0, 0) и (V, W) соответственно. Множество S из N точек задается парами координат (x[i], y[i]), 1<=i<=N. Найти такой прямоугольник G максимальной площади, что его стороны параллельны сторонам A, G полностью лежит в A (G и A могут иметь общие граничные точки) и ни одна точка из S не лежит внутри G (но может лежать на его стороне). Напечатать величину площади G и координаты нижней левой и верхней правой вершин этого прямоугольника. Если таких прямоугольников несколько, то вывести информацию по каждому.

Замечание: в множестве S никакие две точки не лежат на одной прямой, параллельной стороне A.

Необходимо:

1. Организовать ввод данных в виде

<Введите V и W -- координату верхней правой вершины прямоугольника A>
<Введите N -- число точек>
<Введите координаты точек>
x[1]--> y[1]-->
. . . . .
x[N]--> y[N]-->

2.Вывести результаты в виде

<Максимальная площадь прямоугольника =>
<Координаты нижней левой и верхней правой вершин прямоугольника(ов) :>
x1--> y1-->
x2--> y2-->

Задача 2

Пусть слово - это последовательность от 1 до 8 символов, не включающая пробелов. Вводится n слов A1, ..., An. Можно ли их переупорядочить так, чтобы по- лучилась "цепочка", т. е. для каждого слова Aj его первая буква должна совпадать с последней буквой предыдущего слова, а последняя буква в Aj - с первой буквой последующего слова; соответственно последняя буква последнего слова должна совпадать с первой буквой первого слова. В цепочку входят все n слов без повторений.

Дать ответ в виде "Можно"\"Нельзя". Если такое упорядочение возможно, то вывести какую-нибудь цепочку слов. Слова при выводе разделяются пробелами.

Задача 3

Вводится N - количество домов и К - количество дорог. Дома пронумерованы от 1 до N. Каждая дорога определяется тройкой чисел - двумя номерами домов - концов дороги и длиной дороги. В каждом доме живет по одному человеку. Найти точку - место встречи всех людей, от которой суммарное расстояние до всех домов будет минимальным. Если точка лежит на доpоге, то указать номера домов - концов этой доpоги и расстояние от первого из этих домов. Если точка совпадает с домом, то указать номер этого дома. Примечание: длины дорог - положительные целые числа. Организовать ввод в виде:

<Введите N>
<Введите К>
<Введите концы доpоги N и ее длину>
...
<Введите концы доpоги К и ее длину>

Задача 4

Получить разложение на простые множители числа n!=1*2*...*n, n - натуральное. n<=1000.

Ввести данные в виде

<Введите n>

Результат напечатать в форме:

<Множитель> p1 <в разложении встретился> k1 <раз.>

© ярославский ?ентр телекоммуникаций и информационных систем в образовании, 2003.
Rambler's Top100