Задача A. Ситха джедай против

Автор:Задачи автор: Банных Антон, условия автор: Ахи Антон
Входной файл: jedivssith.in   Ограничение времени:2 сек
Выходной файл: jedivssith.out   Ограничение памяти:256 Мб
Максимальный балл:100  

Условие

При подготовке пакета были использованы материалы сайта школьных олимпиад по информатике.

Темная сторона скрывает все. Невозможно будущее предвидеть нам. Мастер Йода.

На планете заброшенной джедай и ситх оказались. Число равное умений Силы знали они. День и ночь джедай и ситх в битве проводят. Свои умения совершенствует со временем из них каждый. Наблюдает со стороны за битвой мастер Йода. Знает он, в какой момент ближайший не хуже ситха джедай будет. А можете ли Вы, возмущение Силы почувствовав, на вопрос этот ответить?

Умения Силы у джедая и ситха обозначаются целыми числами. У обоих воинов по n умений. Изначально умения джедая задаются числами ji, а ситха — si (1 ≤ i ≤ n).

В процессе битвы джедай и ситх совершенствуют свои умения. У джедая i-ое умение Силы возрастает на li за один день битвы. У ситха прирост к i-ому умению составляет di за день.

Считается, что один соперник в битве не хуже другого, если все его умения обозначаются не меньшими числами, чем соответствующие умения противника.

Напишите программу, которая будет находить первый день, когда джедай будет не хуже ситха. Дни нумеруются с нуля.

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

В первой строке входного файла дано одно число целое n (1 ≤ n ≤ 100) — число умений, доступных джедаю и ситху. В следующей строке даны n целых чисел ji — начальные познания джедая в Силе. В третьей строке даны n целых чисел li — прирост i-ого умения джедая за день битвы. В четвертой строке даны n целых чисел si — начальные познания в Силе ситха. В пятой строке n целых чисел di — прирост i-ого умения ситха за день битвы. Все числа во входном файле неотрицательные и не превышают 1000.

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

В выходной файл выведите одно число — номер первого дня, когда джедай будет не хуже ситха. Если такого дня не настанет, в выходной файл выведите фразу "Strong is dark side of the force."

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

Входной файл (jedivssith.in) Выходной файл (jedivssith.out)
1
2
0 0
2 1
2 3
1 0
3
2
2
0 0
2 1
2 3
1 1
Strong is dark side of the force.

Задача B. Министерство правды

Автор:Андрей Комаров, Павел Кротков, Антон Банных
Входной файл: minitrue.in   Ограничение времени:2 сек
Выходной файл: minitrue.out   Ограничение памяти:256 Мб
Максимальный балл:100  

Условие

При подготовке пакета были использованы материалы сайта школьных олимпиад по информатике.

Уинстон Джон работает в министерстве правды. Недавно его повысили до начальника отдела, который занимается журналом "Информатика и жизнь". В связи с изменившейся политической ситуацией нужно срочно привести все выпуски журнала в соответствие с текущей действительностью.

В подчинении у Джона находятся три сотрудника министерства, между которыми он собирается разделить всю работу. Для того, чтобы избежать путаницы, Джон хочет назначить a первых выпусков журнала первому, b следующих второму и c последних третьему сотруднику. При этом каждому сотруднику должен достаться хотя бы один выпуск. Поскольку подобные работы проводятся уже не в первый раз, то про каждый номер журнала известно, сколько минут требуется на приведение его содержания в соответствие с политической ситуацией.

Задание будет выполнено, когда каждый сотрудник закончит вносить изменения. Если сотрудник справляется со своей частью раньше остальных, то оставшееся время он может использовать по своему усмотрению. Обозначим минимальное и максимальное время, затраченное сотрудниками на выполнение своей работы Tmin и Tmax соответственно. Задание будет выполнено за время Tmax, а максимальное количество свободного времени, которое останется у его подчиненных есть Tmax − Tmin.

Джон считает, что большое количество свободного времени плохо сказывается на моральном облике подчиненных. Помогите Джону распределить работу так, чтобы величина Tmax − Tmin была минимальна.

Решения, работающие для n ≤ 100 будут оцениваться из 40 баллов.

Решения, работающие для n ≤ 5000 будут оцениваться из 60 баллов.

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

Первая строка входного файла содержит целое число n (3 ≤ n ≤ 100 000) — количество выпусков журнала. Вторая строка файла содержит n целых чисел t1, t2, … tn (0 ≤ t1, t2, …, tn ≤ 109) — число минут, которое потребуется сотруднику министерства правды для внесения изменения в соответствующий выпуск журнала.

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

Выведите через пробел числа a, b и c (a + b + c = n, a, b, c > 0) — число выпусков журнала, которое должно быть поручено первому, второму и третьему сотруднику. Если ответов несколько, выведите любой.

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

Входной файл (minitrue.in) Выходной файл (minitrue.out)
1
6
1 2 3 0 2 1
2 1 3
2
3
1 2 3
1 1 1

Задача C. Йою Ньерк

Автор:Антон Ахи
Входной файл: yownerk.in   Ограничение времени:3 сек
Выходной файл: yownerk.out   Ограничение памяти:512 Мб
Максимальный балл:100  

Условие

При подготовке пакета были использованы материалы сайта школьных олимпиад по информатике.

Смон Джит впервые приехал в Йою Ньерк. Именно по этой причине он плохо ориентируется в этом огромном городе.

Устройство дорог города весьма просто. Дороги города состоят из n улиц, идущих с востока на запад, и m авеню, простирающихся с севера на юг. Все улицы занумерованы числами от 1 до n, начиная с самой северной улицы. Аналогичным образом, начиная с самой западной, пронумерованы авеню. Все расстояния между соседними улицами и авеню совпадают. Все улицы и авеню являются односторонними.

У Смона есть карта, в которой указаны направления всех дорог города. Смон знает, что сейчас он находится на пересечении a-ой авеню и s-ой улицы. Он очень хочет попасть на своем автомобиле на перекресток b-ой авеню и t-ой улицы. Помогите ему найти лучший маршрут.

Маршрут — это описание пути по которому необходимо двигаться Смону. Это описание состоит из набора целых чисел ci, которые означают, что от первого перекрестка до первого поворота необходимо проехать c1 кварталов, затем повернуть и ехать c2 кварталов до следующего поворота и т.д. Последнее число в описании маршрута соответствует расстоянию от последнего поворота до конечной точки пути. Длиной маршрута считается длина пути, который ему соответствует.

Смон Джит считает, что короткие маршруты лучше длинных. Среди маршрутов одинаковой длины, Смон считает, что маршруты с меньшим числом поворотов лучше. А среди маршрутов одинаковой длины и с одинаковым числом поворотов, Смон считает лучше маршруты, в которых минимальное ci максимально. Оставшиеся маршруты Смон считает равноценными.

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

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

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

Первая строка входного файла содержит два целых числа n и m (1 ≤ n, m ≤ 1000) — число улиц и авеню в Йою Ньерке. В следующей строке записаны n целых чисел, задающих направление улиц. Число на i-ой позиции соответствует направлению i-ой улицы. Значение 1 соответствует тому, что по улице разрешено движение с запада на восток, значение 1 — с востока на запад. В следующей строке аналогичным образом заданы направления авеню, при этом 1 соответствует движению с севера на юг.

Последние две строки входного файла содержат по два целых числа s, a, и t, b, соответственно (1 ≤ s, t ≤ n; 1 ≤ a, b ≤ m). Гарантируется, что начальная и конечная позиции не совпадают.

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

Если доехать до конечной точки невозможно, то выведите в выходной файл единственное слово "Impossible". Иначе, в выходной файл выведите лучший маршрут. В первой строке выведите "Street", если движение в начале пути необходимо начинать по улице, или "Avenue", если по авеню. Во второй строке выведите k — количество чисел в описании пути, а в третьей строке k целых чисел — описание маршрута. Если ответов несколько, выведите любой.

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

Входной файл (yownerk.in) Выходной файл (yownerk.out)
1
3 2
1 -1 -1
-1 1
3 1
3 2
Avenue
3
2 1 2 
2
3 2
-1 -1 -1
-1 1
3 1
3 2
Impossible

Задача D. Обратный кузнечик

Автор:Владимир Ульянцев
Входной файл: grasshopper.in   Ограничение времени:2 сек
Выходной файл: grasshopper.out   Ограничение памяти:256 Мб
Максимальный балл:100  

Условие

При подготовке пакета были использованы материалы сайта школьных олимпиад по информатике.

Учитель дал Вове задание решить задачу о кузнечике. Она состоит в следующем.

В парке в ряд растут n травинок. Находясь на первой из них, кузнечик хочет, совершая прыжки, добраться до последней травинки с номером n. При этом кузнечик за один прыжок может прыгать только на одну или две травинки вперед. К несчастью, некоторые травинки сломались и кузнечику нельзя на них прыгать. Зная, какие травинки сломались и считая, что первая и последняя травинки не сломаны, можно найти число путей, которыми кузнечик может добраться с первой травинки до последней. Вова быстро справился с решением этой задачи и придумал к ней обратную.

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

Решения, работающие для n ≤ 20 и k ≤ 10000 будут оцениваться из 40 баллов.

Решения, работающие для k ≤ 106 будут оцениваться из 70 баллов.

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

Входной файл содержит два целых числа n и k (2 ≤ n ≤ 1000, 0 ≤ k ≤ 1018) — число травинок и различных путей, соответственно.

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

В единственной строке выходного файла выведите через пробел n чисел — описания травинок. Сломанной травинке соответствует число 0, целой — 1. Первая и последняя травинки должны быть целыми. Если существует несколько ответов, то выведите любой.

Если ответа не существует, то выведите в выходной файл единственное слово "Impossible".

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

Входной файл (grasshopper.in) Выходной файл (grasshopper.out)
1
3 1
1 0 1
2
3 2
1 1 1
3
4 0
1 0 0 1
4
566 239
Impossible

0.039s 0.003s 13