Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
У лестницы n ступенек, пронумерованных числами 1, 2, ... , n снизу вверх. На каждой ступеньке написано число. Начиная с подножия лестницы (его можно считать ступенькой с номером 0), требуется взобраться на самый верх (ступеньку с номером n). За один шаг можно подниматься на одну или на две ступеньки. После подъёма числа, записанные на посещённых ступеньках, складываются. Нужно подняться по лестнице так, чтобы сумма этих чисел была как можно больше.
В первой строке входного файла записано целое число n (1 ⩽ n ⩽ 100). Во второй строке заданы целые числа a1, a2, ... , an через пробел (−10 000 ⩽ ai ⩽ 10 000) "--- это числа, записанные на ступеньках.
В первой строке выходного файла выведите одно число "--- максимальную сумму, которую можно получить, поднявшись по данной лестнице.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Входной файл: | input.txt | Ограничение времени: | 2 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
В первой строке входного файла записано число N — количество гвоздиков (2 ≤ N ≤ 100). В следующей строке записано N чисел — координаты всех гвоздиков (неотрицательные целые числа, не превосходящие 10 000).
В выходной файл нужно вывести единственное число — минимальную суммарную длину всех ниточек.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | А. Кленин, краевая олимпиада 2001 г. | Ограничение времени: | 2 сек | |
Входной файл: | input.txt | Ограничение памяти: | 64 Мб | |
Выходной файл: | output.txt |
Начинающий бизнесмен Вася копит в свинье-копилке деньги на открытие собственного дела. Как известно, количество денег в копилке можно определить, только разбив ее. Однако Вася не хочет разбивать копилку раньше, чем будет накоплена требуемая сумма.
Друг подсказал Васе, что можно оценить минимальное количество денег в копилке, зная вес пустой копилки и вес копилки с монетами.
Дано E — вес пустой копилки, F — вес копилки с монетами, N — количество достоинств монет, Ci и Wi — достоинство и вес каждого вида монет (1 ≤ i ≤ N). Требуется определить минимальную сумму, которая может содержаться в копилке.
В первой строке входного файла содержатся числа E F N. В следующих N строках находятся по два числа — Ci Wi. Все числа во входном файле — целые.
В выходном файле должно содержаться одно число — минимальная сумма, накопленная в копилке. Если заданный вес копилки F не может быть достигнут с монетами заданного типа, то в выходной файл следует записать число −1.
1 ≤ E ≤ F ≤ 10000; 1 ≤ N ≤ 100
1 ≤ Ci ≤ 10000; 1 ≤ Wi ≤ 10000
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Автор: | - | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 256 Мб | |
Выходной файл: | output.txt |
Найдите наибольшую общую подпоследовательность двух строк.
В первой строке находится первая строка, во второй строке находится вторая строка. Строки состоят только из маленьких латинских букв.
Вывести наибольшую общую подпоследовательность. Если решений несколько, вывести любое.
Длина каждой строки не менее 1 и не превосходят 1000.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
Автор: | Н. Ведерников, И. Блинов | Ограничение времени: | 1 сек | |
Входной файл: | input.txt | Ограничение памяти: | 256 Мб | |
Выходной файл: | output.txt |
Илон Маск закончил создание транспорта будущего — Hyperloop. Hyperloop — расположенный на опорах надземный трубопровод, внутри которого с высокой скоростью в одном направлении перемещаются одиночные транспортные капсулы. Пассажирский вариант предполагает n рядов по одному сиденью. Однако из-за конструктивных недостатков люди не могут сидеть на двух подряд идущих рядах. Поэтому, когда продаётся билет с номером места ai из продажи исчезает сам этот билет, и два соседних с ним билета.
Слон Пахом подрабатывает контролёром на Hyperloop. На рейс уже распродано k билетов с номерами ai. Так как все хотят прокатиться на Hyperloop, вы точно знаете, что все билеты будут распроданы. После продажи k билетов вам стало интересно, сколько существует различных способов продажи оставшихся билетов так, чтобы не нарушить правила продажи билетов. Способы считаются различными, если в одном из них существует хотя бы один билет, не проданный в другом.
Первая строка входного файла содержит два целых числа N и K. Далее следует K строк содержащих по одному числу ai. Гарантируется, что для всех пар i и j выполняется условие |ai − aj| ≥ 2 .
Выходной файл должен содержать одно — количество вариантов рассадки пассажиров по модулю 1000000007.
1 ≤ N ≤ 106; 1 ≤ K ≤ 105; 1 ≤ ai ≤ N
Баллы за каждую подзадачу начисляются только в случае, если все тесты этой подзадачи успешно пройдены.
Подзадача | Баллы | Дополнительные ограничения | ||
---|---|---|---|---|
N | K | |||
1 | 15 | 1 ≤ N ≤ 105, N - чётное | K = N / 2 | |
2 | 35 | 1 ≤ N ≤ 20 | 1 ≤ K ≤ 10 | |
3 | 50 | 1 ≤ N ≤ 106 | 1 ≤ K ≤ 105 |
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|
Входной файл: | input.txt | Ограничение времени: | 1 сек | |
Выходной файл: | output.txt | Ограничение памяти: | 256 Мб |
У Васи есть любимый конструктор чисел. Он представляет из себя табличку длины N и неограниченный запас цифр от 0 до 9.
Для каждого числа Вася считает его крутость. Крутость — это сумма произведений всех пар соседних цифр в числе, но при этом числа, в которых рядом стоят две одинаковые цифры, всегда имеют крутость 0. Вася очень любит играть с конструктором, поэтому он износился, и в некоторых позициях застряли цифры. Вася хочет узнать, насколько максимальная крутость числа в изношенном конструкторе меньше крутости самого крутого числа в новом конструкторе, в котором нет застрявших цифр.
Рассмотрим тест №3: даны 99999 - это "заевшие" цифры в изношенном конструкторе, получается, что крутость изношенного конструктора Для этого примера = 0, т.к. все цифры одинаковые. Для нового конструктора "шаблон" числа будет выглядеть как *****, куда, следуя логики Поиска максимальной суммы произведения, мы ставим 98989, получая 9*8 + 8*9 + 9*8 + 8*9 = 288. Ответ: 288 - 0 = 288
В первой строке записано число 1 ≤ N ≤ 105. Во второй строке содержится S длины N, в которой на позиции i стоит * если позиция свободна, и на неё можно ставить любую цифру, в противном случае на i-й позиции записана цифра от 0 до 9.
Выведите единственное целое число: разницу между крутостью самого крутого числа в новом конструкторе и конструкторе Васи.
№ | Входной файл (input.txt ) |
Выходной файл (output.txt ) |
---|---|---|
1 |
|
|
2 |
|
|
3 |
|
|