printЗадачи заочного тура региональной олимпиады Информатика-2008

printA. Навигация по городу

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Компания Goose собирается реализовать новый сервис для туристов. Если турист заблудился в незнакомом городе или захочет поесть, ему достаточно отправить SMS, содержащее название гостиницы или слово "кафе", и он получит карту-схему, на которой будет показано, как пройти до гостиницы или ближайшего кафе.
Напишите программу, которая определяет по координатам туриста и нескольких кафе координаты ближайшего из них. Расстояние от туриста до `i`-го кафе должно вычисляться по формуле `|x_i\ -\ x_0|\ +\ |y_i\ -\ y_0|`, где `x_i` и `y_i` – координаты `i`-го кафе, а `x_0` и `y_0` – координаты туриста.
В первой строке ввода содержатся два целых числа `x_0` и `y_0`, разделенных пробелом – координаты туриста. Во второй строке – одно целое число `N` (`1\ ≤\ N\ ≤\ 100`) – количество кафе. Далее следует `N` строк, в каждой строке содержатся два целых числа `x_i` и `y_i`, разделенных пробелом – координаты `i`-го кафе. Все координаты в диапазоне от 0 до `10^5`.
Вывести координаты ближайшего кафе. Если несколько кафе находятся на одинаковом расстоянии, вывести координаты любого из них.

Пример ввода

100 200
3
200 450
110 250
250 0

Пример вывода

110 250

printB. Перестановки

Ограничения: время – 1s/2s, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Дано два целых числа `A` и `B`. Нужно так переставить цифры в числах `A` и `B`, чтобы сумма этих чисел делилась без остатка на `M`.
В первой строке ввода содержатся три целых числа `A` (`1\ ≤\ A\ <\ 10^9`), `B` (`1\ ≤\ B\ <\ 10^9`) и `M` (`2\ ≤\ M\ ≤\ 10^6`), разделенных пробелами.
Вывести через пробел два числа целых числа `X` (получаемое перестановкой цифр числа `A`) и `Y` (получаемое перестановкой цифр числа `B`). Числа `X` и `Y` не должны содержать ведущих нулей. Сумма чисел `X` и `Y` должна быть кратна `M`. Можно вывести любой вариант из возможных. Если перестановки не существует, вывести сообщение "IMPOSSIBLE".

Пример ввода 1

1234 5678 15

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

3214 8756

Пример ввода 2

1111 3333 3

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

IMPOSSIBLE
loading