Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
Один вопрос в части A на ЕГЭ был очень сложным, и никто из школьников не знал точного ответа на него. Однако некоторые школьники знали, какой ответ точно неправильный. После экзамена они собрались, чтобы выяснить, какой же правильный ответ на этот вопрос.
N школьников записали, какой ответ точно неправильный. Требуется определить список возможных правильных ответов. Всего в тесте 4 варианта ответа.
Входной файл содержит целое число N, за которым следуют N целых чисел от 1 до 4 — догадки школьников.
Требуется вывести в выходной файл список возможных вариантов ответа в порядке возрастания.
1 ≤ N ≤ 100.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
В одном маленьком государстве была красивая аллея, на которой росли разные деревья. Но однажды в государстве случился дефицит древесины, поэтому правительство решило срубить пару деревьев аллеи. При этом требуется, чтобы расстояние между деревьями было достаточно большим, чтобы не нарушать красоту аллеи.
Даны значения высот N деревьев аллеи. Требуется найти два дерева, сумма высот которых максимальна и при этом расстояние между ними не меньше d. Расстояние — это разница порядковых номеров деревьев.
Входной файл содержит целые числа N d, за которым следуют N целых чисел ai — высоты деревьев.
Требуется вывести в выходной файл единственное целое число — максимальную сумму высот деревьев, расстояние между которыми не меньше d.
2 ≤ N ≤ 100000.
1 ≤ d ≤ N−1.
1 ≤ ai ≤ 109.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
Однажды стая из N собак нашла M косточек. Теперь собаки хотят поделить косточки между собой. В стае действует безоговорочное правило: если одна собака старше другой, то она должна получить не меньше косточек, чем младшая.
Сколько существует способов распределить косточки между собаками, чтобы каждая собака получила хотя бы одну кость?
Например, если собак 2, а косточек 4, то существует 2 способа: либо младшей 1 кость, а старшей 3, либо младшей и старшей по 2 кости.
Входной файл содержит целые числа N M.
Требуется вывести в выходной файл единственное целое число — искомое число способов.
1 ≤ N ≤ M ≤ 50.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | Г. Гренкин | |||
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
В пожилом возрасте Марфа Геннадьевна совершила прыжок с парашютом. Как говорится, годы летят...
Когда Марфа Геннадьевна уже приземлилась, она как опытный физик и математик решила вычислить, сколько времени она летела до раскрытия парашюта. Для простоты Марфа Геннадьевна приняла силу сопротивления воздуха пропорциональной скорости: . После несложных вычислений Марфа Геннадьевна получила формулу, выражающую зависимость высоты от времени:
Здесь , где e = 2.71828... — постоянная Эйлера, H — начальная высота, g = 9.8 м/с2 — ускорение свободного падения, m — масса Марфы Геннадьевны. Марфа Геннадьевна пренебрегла начальной горизонтальной скоростью за счет движения самолета и приняла начальную вертикальную скорость равной 0.
Требуется определить, через какое время Марфа Геннадьевна достигла высоты h*, на которой она раскрыла парашют.
Входной файл содержит вещественные числа H h* m k.
H и h* заданы в км, m в кг, k в кг/с.
Требуется вывести в выходной файл единственное вещественное число — время до раскрытия парашюта в секундах по меньшей мере с 3-мя точными знаками после запятой.
2 ≤ H ≤ 100, 1 ≤ h* ≤ H.
50 ≤ m ≤ 150.
0.1 ≤ k ≤ 10.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
Автор: | М. Спорышев | |||
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб | |
Максимальный балл: | 100 |
Молодой программист Вася недавно написал очень популярное и полезное веб-приложение, которое привлекло внимание спонсоров.
Теперь у Васи есть много денег, и он может основать свою компанию! Но для этого ему нужны сотрудники. Вася хочет чтобы у него в компании было два отдела. В первом отделе программисты будут заниматься разрабатыванием и тестированием новых идей, во втором - внедрением надежных и протестированных разработок первого отдела в приложение Васи.
Вася дал объявление о наборе сотрудников в каждый отдел и сейчас он имеет на руках список желающих. Каждый желающий указал, в какой отдел он хочет идти работать, либо указал, что готов работать в любом отделе. Тем не менее, Вася может нанять любого желающего только в один из отделов.
Каждому человеку из списка Вася поставил в соответствие некоторое целое число, которое характеризует полезность данного человека для компании. Теперь Вася хочет нанять сотрудников в оба отдела своей компании, так чтобы суммарная их полезность была максимально возможной.
Однако сотрудникам надо платить зарплату, а количество денег у Васи строго ограничено, поэтому он заранее указал количество сотрудников, которое он может нанять в каждый отдел.
Вам требуется написать программу, которая укажет, каких сотрудников нанял Вася в каждый отдел.
Первая строка входного файла содержит целые числа N, M, K — количество желающих работать у Васи в компании, количество сотрудников, которое может нанять Вася в первый и второй отдел соответственно.
Вторая строка содержит N целых чисел ai — полезность желающего с номером i.
Третья строка содержит N целых чисел di, имеющих значения 1,2 либо 0 — 1, если i-й желающий хочет работать в первом отделе, 2 — во втором, либо 0 — в обоих.
В первой строке входного файла требуется вывести N1 — количество сотрудников, нанятых в первый отдел и N1 целых чисел — номера желающих, нанятых в данный отдел. Желающие пронумерованы начиная с 1.
В первой строке входного файла требуется вывести N2 — количество сотрудников, нанятых во второй отдел и N2 целых чисел — номера желающих, нанятых в данный отдел.
Если существует несколько решений, выведите любое из них.
1 ≤ N, M, K ≤ 100000.
1 ≤ ai ≤ 104.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|