Входные данные

advertisement
Задача A. Шоколадка
Ввод с клавиатуры
Ограничение времени – 1 секунда
В шоколадке намечено деление на дольки M горизонтальными и N вертикальными линиями. За какое
минимальное число разломов ее можно разделить на намеченные дольки. За один разлом можно ломать только
один кусок по одной из линий.
Входные данные
Программе на вход подается сначала целое число M (0  M  1 000 000), а затем N (0  N  1 000 000).
Выходные данные
Ваша программа должна выводить на экран одно целое число — минимальное количество разломов.
Пример входных данных
1 1
Выходные данные для примера входных данных
3
Задача B. Прямоугольник
Ввод с клавиатуры
Ограничение времени – 1 секунда
Пусть известны координаты трех вершин прямоугольника, нарисованного на плоскости произвольным
образом. Требуется найти значение координат четвертой из вершин. Используйте тип данных extended в
Паскале (при отладке программы в BP 7.0 она должна начинаться с {$N+}) и long double в С/С++.
Входные данные
В потоке ввода через пробел заданы сначала две координаты одной вершины, затем другой, потом третьей
(порядок перечисления вершин не фиксирован). Все координаты заданы вещественными числами точно.
Выходные данные
Ваша программа должна выводить на экран точные координаты четвертой вершины, разделяя их пробелом.
Пример входных данных
1 0 –2 0 1 1.5
Выходные данные для примера входных данных
-2 1.5
Задача C. Ну и возраст!
Ввод с клавиатуры
Ограничение времени – 1 секунда
Школьники 3 класса на уроке математики подсчитывали возраст знаменитых людей в днях. По полученному
им числу и дню, когда проходил урок математики, определить дату рождения по григорианскому календарю
для заданной персоны, родившейся не ранее Рождества Христова. Напомним, что годы, которые делятся на
100, но не делятся на 400, високосными не являются.
Входные данные
В первой строке потока ввода находится дата дня, когда проходил урок математики, записанная в виде DD MM
YYYY, с помощью трех натуральных чисел, разделенных пробелами. Во второй строке — возраст искомой
персоны в днях.
Выходные данные
Ваша программа должна выводить на экран найденную дату рождения по тому же формату для даты, как и при
вводе.
Пример входных данных
01 01 0001
7
Выходные данные для примера входных данных
25 12 0000
Задача D. Утраивающаяся последовательность
Ввод с клавиатуры
Ограничение времени – 1 секунда
Бесконечная последовательность чисел A(1), A(2),... строится следующим образом:
A(1) = 0.
Пусть уже построены элементы A(1), A(2), ..., A(3m).
Тогда элементы A(3m + 1), A(3m + 2), ..., A(3m+1) принимают значения
A(3m) + 3m, A(3m – 1) + 3m, ..., A(1) + 3m, A(1) + 23m, A(2) + 23m, ..., A(3m) + 23m соответственно.
Напишите программу, которая по заданному натуральному N  1 000 000 000 находит А(N).
Файл исходных данных содержит число N. Вывести в выходной файл значение A(N).
Пример входных данных
123457
Выходные данные для примера входных данных
123456
Задача E.
Лабиринт
Входной файл – e.in
Выходной файл – e.out
Ограничение времени – 1 секунда
Том Сойер, блуждая по лабиринту, записывал карандашом изменения в направлении своего движения и
сколько шагов он прошел в том или ином направлении. Его запись могла выглядеть так: F 5 R 1 B 2 L 1. Здесь
F означает движение вперед (F может быть только первым и обязательным элементом в записи пути, от входа
можно двигаться только в одном направлении), R – поворот направо, L – налево, B – движение назад, число
после буквы обозначает количество шагов, сделанных после изменения направления. Другие обозначения в
записи не встречаются. Выбравшись из лабиринта Том решил нарисовать схему своего движения. Однако, если
линия на схеме попадала в какую-либо часть лабиринта повторно, то он сразу стирал в схеме ту часть
маршрута, которая заведомо оказалась лишней в процессе поиска выхода, не меняя остальные части. Тем не
менее оказалось, что в результирующем маршруте сначала хотя бы один шаг потребуется сделать в первом
направлении исходного маршрута. Опишите маршрут, получившийся на схеме Тома.
Входные данные
Во входном файле приводится запись всего маршрута Тома в одной строке. Буква F является первой и
встречается один раз. После каждой буквы через 1 пробел расположено натуральное число, не превосходящее
9. Следующая буква расположена также ровно через 1 пробел после числа. Количество изменений в
направлении не превосходит 30.
Выходные данные
Ответ выдать в том же формате, что и входные данные (он также должен начинаться с буквы F).
Пример входных данных
F 5 R 1 B 2 L 1
Выходные данные для примера входных данных
F 5 L 1 L 1
Задача F.
Форматирование текста
Входной файл – f.in
Выходной файл – f.out
Ограничение времени – 1 секунда
Вы должны написать программу, которая считывает из входного файла текст и записывает в выходной файл
тот же текст, отформатированный так, как это описано ниже.
В первой строке входного файла находится одно натуральное число N<81 такое, что количество символов в
строке выходного файла, не будет превышать N более, чем на часть одного слова. В остальных строках
входного файла, число которых неизвестно, находится произвольный текст. Назовем словом произвольную
последовательность символов, разделенных пробелами и/или символами перевода строки.
Ваша программа должна вывести в выходной файл тот же текст так, чтобы каждая строка начиналась и
заканчивалась с непробельного символа, между словами находился ровно один пробел, а количество символов
в строке не превышало N больше, чем на часть последнего слова. То есть, если очередное слово, начало
которого находится до N-го символа включительно, не помещается в N позиций текущей строки, то следующее
за ним слово должно быть напечатано в следующей строке. Если же слово закончилось в N–1-ом столбце, то
пробел за ним стоять не должен, а следующее слово должно начинаться с новой строки (только такая строка и
последняя строка в результирующем файле может иметь длину меньше, чем N). Строк, не содержащих ни
одного слова, в выходном файле быть не должно (исключение может составить последняя строка, содержащая
только признак конца файла).
Пример входного файла
50
Сколько
кирпичей
существует способов
размера
2х1х1?
построить
2х2хn-колонну из
Столько,
сколько
вы сможете себе позволить
ценам
и еще чуть-чуть.
Выходной файл для примера входного файла
Сколько существует способов построить 2х2хn-колонну
из кирпичей размера 2х1х1? Столько, сколько вы сможете
себе позволить по нынешним ценам и еще чуть-чуть.
по нынешним
Задача G.
Здание
Входной файл – g.in
Выходной файл – g.out
Ограничение времени – 1 секунда
Анатолию Александровичу разрешили построить новое здание СУНЦ МГУ в любой точке нашей
безграничной Родины. Он решил построить его так, чтобы суммарное расстояние, которое проезжают ученики
от своих домов до школы, было минимально. Для упрощения задачи план России можно представить в виде
целочисленной сетки с единичным шагом. Ученик, добираясь до школы, может двигаться только по сторонам
этой сетки.
Напишите программу, которая поможет Анатолию Александровичу определить целочисленные
координаты постройки нового здания СУНЦ МГУ.
Входной файл
Первая строка входного файла содержит число N — количество учеников СУНЦ (1  N  500). Каждая из
последующих N строк содержит координаты дома школьника — два целых числа из диапазона [–2109, 2109],
разделенных пробелом.
Выходной файл
Ваша программа должна вывести координаты места для постройки школы — два целых числа, записанных
через пробел.
Пример файла входных данных
4
0
0
1
2
0
0
1
2
Выходной файл для примера входного файла
0 1
Задача G.
Здание
Входной файл – g.in
Выходной файл – g.out
Ограничение времени – 1 секунда
Анатолию Александровичу разрешили построить новое здание СУНЦ МГУ в любой точке нашей
безграничной Родины. Он решил построить его так, чтобы суммарное расстояние, которое проезжают ученики
от своих домов до школы, было минимально. Для упрощения задачи план России можно представить в виде
целочисленной сетки с единичным шагом. Ученик, добираясь до школы, может двигаться только по сторонам
этой сетки.
Напишите программу, которая поможет Анатолию Александровичу определить целочисленные
координаты постройки нового здания СУНЦ МГУ.
Входной файл
Первая строка входного файла содержит число N — количество учеников СУНЦ (1  N  500). Каждая из
последующих N строк содержит координаты дома школьника — два целых числа из диапазона [–2109, 2109],
разделенных пробелом.
Выходной файл
Ваша программа должна вывести координаты места для постройки школы — два целых числа, записанных
через пробел.
Пример файла входных данных
4
0
0
1
2
0
0
1
2
Выходной файл для примера входного файла
0 1
Download