Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Дано N отрезков с длинами w1, …, wN. Требуется расположить их на интервале числовой оси [0, L] так, чтобы они покрыли этот интервал без пропусков и не выходили за его границы.
Необходимо использовать все отрезки. Отрезки можно накладывать друг на друга.
Первая строка входного файла содержит целые числа N и L.
Вторая строка содержит N целых чисел w1 w2… wN.
Выходной файл должен содержать N целых чисел x1 x2… xN — координаты левых концов отрезков.
Если решения не существует, то выходной файл должен содержать единственное число −1. Если существует несколько решений, вывести любое из них.
1 ≤ N ≤ 1000, 1 ≤ L ≤ 10000, 1 ≤ wi ≤ 10000.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
На склад завезли большую партию стиральных машин и расставили их так, как показано на рисунке. Когда машины уже были расставлены, на одной из них была обнаружена вмятина. Теперь рабочие должны переместить помятую машину к выходу.
Рабочие могут передвигать стиральную машину на свободное место, соседнее с ней по горизонтали или вертикали.
Требуется определить минимальное количество перемещений стиральных машин, которое придётся сделать рабочим.
В начальный момент времени координаты помятой машины — (1, 1), координаты выхода — (N, M), свободное место расположено в тех же координатах, что и выход.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Первоклассник нарисовал на бумаге две различные точки: A и B. Он воткнул ножку шагающего циркуля в точку A, другая ножка не касалась бумаги. Если он теперь воткнёт вторую ножку в произвольную точку плоскости, до которой дотягивается циркуль, а затем вытащит из бумаги первую ножку, то такое действие будет называться шагом циркуля.
Найти наименьшее количество шагов циркуля, которое нужно сделать, чтобы одна из его ножек оказалась в точке B. Раствор циркуля (т. е. длина шага) s может изменяться от s1 до s2 включительно (s1 ≤ s ≤ s2).
Первая строка содержит вещественные числа xA yA xB yB — координаты точек A и B.
Вторая строка содержит вещественные числа s1 s2.
Выходной файл должен содержать единственное целое число — минимальное количество шагов циркуля.
−70 < xA, yA, xB, yB < 70,
1 ≤ s1 ≤ s2 < 100.
Все входные данные имеют не более двух знаков после запятой и заданы точно (не содержат ошибки округления).
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | А. Жуплев | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Прожив 1000 лет, Гассан Абдуррахман ибн Хоттаб узнал, что из интернета можно скачивать файлы. Решив помочь другим пользователям, он сотворил собственный сервер с файлами. Поскольку сервер Хоттаба волшебный, любой файл скачивается с него мгновенно. Однако, после скачивания файла размером S мегабайт скачавший его компьютер отключается от сервера на S секунд.
В распоряжении шушанчиков имеется два компьютера, подключённых к интернету. Им требуется скачать N файлов, i-й файл размером si мегабайт. Шушанчики просят Вас рассчитать минимальное время, за которое можно скачать эти файлы с сервера Хоттабыча.
Во входном файле содержится целое число N — количество файлов, за которым следуют N целых чисел si — размеры файлов в мегабайтах.
В выходном файле должно содержаться единственное число — минимальное время скачивания всех файлов в секундах.
1 ≤ N ≤ 500
1 ≤ si ≤ 500
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Е. Васильева, А. Кленин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Жители одного N-этажного дома решили устроить флэш-моб — изобразить ночью на стене дома ползущую "змейку" из L светящихся окон, включая и выключая свет в определённом порядке.
Они придумали схему движения змейки, которая представляет собой последовательность шагов R, L, U, D для движения вправо, влево, вверх и вниз соответственно. Если змейка достигает одного из краев стены, она выползает с другого края (если была наверху и ползла вверх — выползает снизу, и т.д.). Змейка должна выполнять один шаг в секунду.
Теперь нужно для каждого окна определить моменты включения и выключения света.
Окна пронумерованы слева направо снизу вверх, начиная с 1. На каждом этаже имеется по M окон. В начальный момент времени видна только "голова" змейки, которая находится в первом окне. В течении первых L шагов в первом окне появляются последующие части змейки. Перед началом движения свет во всех окнах выключен, по окончании движения он также выключается.
Для каждого окна, в котором хотя бы раз должен зажечься свет, следует вывести его номер и интервалы времени, в течении которых свет должен гореть. Интервалы должны быть отсортированы по возрастанию времени начала. Если следующий интервал начинается сразу по окончании предыдущего, их следует объединить.
В первой строке входного файла содержатся числа N M L. Во второй строке — описания шагов для змейки, записанные подряд без пробелов.
В выходном файле должна содержаться последовательность инструкций для каждого окна. Инструкции состоят из номера окна, количества интервалов, и последовательности интервалов, где каждый интервал описывается начальным и конечным моментом времени, измеренным в секундах.
1 ≤ N ≤ 50, 1 ≤ M ≤ 50, 1 ≤ L ≤ 1000
Количество шагов находится в диапазоне от 1 до 10000
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | И. Туфанов | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Школьник Петя собрал собственный цветной дисплей с разрешением 2 пикселя по вертикали и N пикселей по горизонтали. Каждый пиксель определяется координатами (a, b), где a — номер строки от 1 до 2, а b — номер столбца от 1 до N.
На дисплее с таким разрешением уже можно играть и Петя разрабатывает одну из игр — "Бег по коридору". По правилам игры, каждый пиксель может быть либо свободен, либо занят препятствием, либо занят игроком, либо занят эликсиром. Игрок может перемещаться в один из смежных пикселей, не занятых препятствием (смежными называются пиксели, соседствующие либо в строке, либо в столбце).
В начале у игрока нулевой уровень усталости. Каждое перемещение добавляет к текущему уровню усталости единицу. Как только игрок перемещается на пиксель, занятый эликсиром, он выпивает эликсир, и уровень усталости уменьшается на единицу. Таким образом, перемещение на пиксель с эликсиром не увеличивает уровня усталости. Когда игрок покидает клетку, на которой был эликсир, она становится свободной.
Изначально игрок находится в пикселе с координатами (1, 1). Цель игры — добраться до N-ого столбца, минимизировав конечный уровень усталости.
Вам необходимо написать программу, которая по заданному плану коридора определит минимальный уровень усталости, с которым можно пройти игру.
В первой строке входного файла содержится число N — горизонтальное разрешение дисплея. Далее следует описание игрового поля — пара строк длиной N каждая. Символ "." (точка) соответствует свободному пикселю, символ "#" (решетка) — занятому препятствием, символ "X" (прописная латинская X) — пикселю с эликсиром.
Гарантируется, что первый символ первой строки равен ".", кроме того, последний символ хотя бы одной из двух строк не равен "#".
Гарантируется, что можно добраться до N-ого столбца.
В выходной файл выведите единственное число — минимальный уровень усталости, которого можно достичь, пройдя игру.
2 ≤ N ≤ 100
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | А. Кленин, Е. Шавлюгин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Дана шахматная доска размером N × M клеток. Клетки на ней обозначаются парами координат — номерами вертикали и горизонтали.
В клетке (1, 1) расположен шахматный король. Требуется обойти королём доску, побывав в каждой клетке ровно один раз, и вернувшись в исходную позицию.
Примечание. Шахматный король за один ход может переместиться на любую из соседних по горизонтали, вертикали или диагонали клеток.
Входной файл содержит числа N M.
Выходной файл должен содержать N × M пар чисел v h — координаты клеток, через которые проходит путь короля (1 ≤ v ≤ N, 1 ≤ h ≤ M). Первая клетка в пути должна иметь координаты (1, 1), а последняя — (1, 2), (2, 1) или (2, 2). Если имеется несколько решений, вывести любое из них.
2 ≤ N, M ≤ 100.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | А. Кленин | |||
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 64 Мб |
Назовем расширенной последовательностью Лэнгфорда такую последовательность из 2 N целых чисел, что:
Требуется по данному N найти соответствующую расширенную последовательность Лэнгфорда.
Во входном файле содержится целое число N.
В выходном файле должно содержаться 2 N целых чисел — элементы последовательности. Если решений несколько, вывести любое из них.
4 ≤ N ≤ 40
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|