Задача A. Битовая Золушка

Автор:Н. Чистякова   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Каждый год в конце октября в королевстве Л. проходит торжественный бал, посвящённый Последнему Тёплому Дню. Золушка весь год мечтала попасть на бал, однако в последний момент мачеха подкинула ей задачу: рассортировать огромный мешок перемешавшихся нулей и единиц. На перебор цифр вручную может уйти несколько часов, и тогда Золушка гарантированно опоздает к началу праздника.

Помогите Золушке успеть на бал вовремя и напишите программу, которая рассортирует цифры за неё.

Отправка решения и тестирование

Данная задача будет проверяться на ОДНОМ входном файле, содержащем все тесты. Этот файл можно скачать ЗДЕСЬ.

В качестве решения принимается как программа, так и текстовый файл, содержащий ответ к задаче в требуемом формате (при его отправке следует выбрать в тестирующей системе среду разработки "Answer text").

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

Формат входного файла

Первая строка входного файла содержит натуральное число N — количество тестов в файле. Последующие N строк содержат последовательности, состоящие из MN символов «0» и KN символов «1» в произвольном порядке.

Формат выходного файла

Выходной файл должен содержать N строк: каждая строка должна содержать последовательность из MN символов «0» и последовательность из KN символов «1». Последовательности должны быть разделены единственным символом «пробел» (код 32).

Ограничения

1 ≤ N ≤ 100, 1 ≤ MN + KN ≤ 300, MN, KN ≥ 0

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
2
0011101000101
11111110
0000000 111111
0 1111111

Задача B. Гиги за шаги

Автор:Б. Тимофеенко   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:512 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Юный программист Саша очень любит проводить время в Интернете. Недавно его провайдер "Дедлайн" объявил акцию "Гиги за шаги". Её суть очень проста — к ноге участника прикрепляется шагомер, который подсчитывает число M — количество шагов, пройденных за период проведения акции. S шагов обмениваются на 1 гигабайт интернет-трафика. В результате участнику предоставляется MS гигабайт (полученное число округляется вниз до ближайшего целого).

До конца акции осталось D дней, и Саша хочет узнать, сколько гигабайт интернет-трафика он может получить. Физическая форма Саши позволяет пройти X шагов в первый день; ежедневная ходьба тренирует мальчика, и в каждый последующий день он может пройти на V шагов больше, чем в предыдущий.

Помогите Саше узнать, сколько гигабайт он может получить.

Формат входного файла

Во входном файле содержатся целые числа D, X, V, S.

Формат выходного файла

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

Если Вася не может получить ни одного гигабайта, выведите число 0.

Ограничения

0 ≤ D, X, V ≤ 10000, 1 ≤ S ≤ 100000

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
0 10 0 1
0
2
11 3 2 7
20

Задача C. Нефтяной кризис

Автор:И. Блинов   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:512 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Нефтяная компания ежедневно производит N баррелей нефти, M из которых идёт на производство бензина, остальная нефть идёт на продажу. Из 1 барреля нефти получается 1 баррель бензина. В текущем месяце цена на нефть составляет S1 долларов за баррель, цена на бензин S2 долларов за баррель. В начале каждого месяца цена на нефть изменяется на P процентов относительно цены в предыдущем месяце (P > 0 означает повышение цен, P < 0  — понижение).

Рост цен на нефть, разумеется, вызывает рост цен на бензин. При этом цена на бензин увеличивается на те же самые P процентов.

Падение цен на нефть тоже вызывает рост цен на бензин. Это происходит потому, что нефтяной компании необходимо перекрыть недополученную прибыль от продажи нефти. В таком случае цена на бензин увеличивается на величину, необходимую для сохранения ежедневной прибыли на прежнем уровне.

В случае если цены на нефть не изменяются, то цена на бензин увеличивается на величину инфляции. Эта величина фиксирована и равна 10%.

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

Формат входного файла

Первая строка входного файла содержит 5 целых чисел N, M, S1, S2, P.

Формат выходного файла

Выходной файл должен содержать одно вещественное число, новую цену за баррель бензина с точностью не менее 2-х знаков после запятой.

Ограничения

1 ≤ N, M ≤ 1000

1 ≤ S1, S2 ≤ 100

100 ≤ P ≤ 200

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
15 5 1 2 0
2.2
2
15 5 1 2 -30
2.6
3
10 5 1 2 100
4

Задача D. Морковные метры

Автор:Н. Чистякова   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:100  

Условие

Группа учёных ставит эксперименты над роботом марки OSeL, работающим на моркови. Лаборатория, где проходят эксперименты, представляет собой плоскость, в которой введена система координат: ось OX направлена восток, ось OY — на север.

В начале эксперимента в лабораторию помещают два прямоугольных ящика, наполненных морковью. Стороны каждого ящика параллельны осям координат, положение ящиков задаётся координатами юго-западного и северо-восточного углов: (S, W), (N, E). Затем в точку (X, Y) помещается робот. Задача робота — добраться до ближайшего к нему ящика по кратчайшей траектории.

Помогите учёным определить, к какому из ящиков, с какой стороны (северной, западной, южной или восточной) или к какому углу (северо-западному, северо-восточному, юго-западному или юго-восточному) должен подъехать робот.

Формат входного файла

Первая строка входного файла содержит координаты первого ящика: S1 W1 N1 E1.

Вторая строка содержит координаты второго ящика: S2 W2 N2 E2.

Третья строка содержит координаты робота: X Y. Обратите внимание, что порядок координат робота отличается от порядка координат ящиков.

Все координаты заданы натуральными числами. Ящики не пересекаются, координаты робота находятся вне ящиков.

Формат выходного файла

В выходной файл следует вывести номер ящика и обозначение стороны либо угла, разделённые одним пробелом.

Обозначения сторон: N — северная, S — южная, E — восточная, W — западная. Обозначения углов: NW - северо-западный, NE - северо-восточный, SW - юго-западный, SE - юго-восточный.

Если робот не может выбрать между двумя равноудалёнными ящиками, следует вывести 0.

Ограничения

1 ≤ S, W, N, E, X, Y ≤ 104, S < N, W < E

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
10 10 20 20
10 50 30 60
30 0
1 SE
2
0 0 2 10
5 0 10 10
5 4
2 S

Задача E. Рамка

Автор:X командный чемпионат Санкт-Петербурга по программированию - V Открытая Кировская командная олимпиада   Ограничение времени:2 сек
Входной файл:Стандартный вход   Ограничение памяти:8 Мб
Выходной файл:Стандартный выход  
Максимальный балл:1  

Условие

Рассмотрим прямоугольник размером X × Y, из середины которого вырезали прямоугольник размером (X - 2) × (Y - 2). Назовем такую геометрическую фигуру рамкой размера X × Y. На рисунке 1 изображена рамка размера 5 × 6.

Предположим, что у нас имеется неограниченный запас плиток размера A × 1. Рассмотрим следующую задачу: можно ли полностью замостить рамку размера X × Y такими плитками (плитки разрешается поворачивать на 90 градусов). Например, рамку 5 × 6 можно полностью замостить плитками размера 3 × 1 (например, как это сделано на рисунке 2), а плитками размера 4 × 1 - нельзя.

Формат входных данных

Первая строка входного файла содержит два целых числа — X и Y. Вторая строка содержит число N — количество видов плиток, которые следует проанализировать. Третья строка содержит N натуральных чисел. Обозначим i-ое число третьей строки входного файла за Ai.

Формат выходных данных

Выведите в выходной файл N строк, i-ая строка должна содержать слово yes, если можно замостить рамку размера X × Y плитками размера Ai × 1 и no в противном случае.

Ограничения

3 ≤ X, Y ≤ 106, 1 ≤ Ai ≤ 106, 1 ≤ N> ≤ 1000.

Примеры тестов

Стандартный вход Стандартный выход
1
5 6
2
3 4
yes
no

Задача F. Забор по фен-шую

Автор:А. Кленин, Г. Гренкин   Ограничение времени:1 сек
Входной файл:input.txt   Ограничение памяти:256 Мб
Выходной файл:output.txt  
Максимальный балл:105  

Условие

Марфа Геннадьевна попросила внука построить новый забор вдоль огорода. Внук выполнил просьбу бабушки и построил забор из N досок, в котором доска с номером i имела высоту ai сантиметров.

Марфа Геннадьевна недавно прочитала книгу, в которой было написано, что гармоничным является забор, состоящий из чередующихся высоких и низких деревянных досок, то есть должно выполняться либо условие a1 < a2 > a3 < a4 > …, либо условие a1 > a2 < a3 > a4 < ….

Внук решил порадовать Марфу Геннадьевну и нарастить некоторые доски, чтобы сделать забор гармоничным. При этом ему хочется потратить поменьше древесины.

Напишите программу, которая по указанным длинам досок ai определяет новый набор длин bi, в котором:

  1. ai ≤ bi,
  2. либо b1 < b2 > b3 < b4 > …, либо b1 > b2 < b3 > b4 < …
  3. сумма bi минимальна.

Формат входного файла

Входной файл содержит целое число N за которым следует N чисел ai — длины досок.

Формат выходного файла

Входной файл должен содержать N целых чисел bi — новые длины досок. Если существует несколько решений, выведите любое из них.

Ограничения

1 ≤ N ≤ 100; 1 ≤ ai ≤ 100

Примеры тестов

Входной файл (input.txt) Выходной файл (output.txt)
1
1
20
20
2
4
11 10 11 15
11 12 11 15

0.470s 0.011s 29