Страница: << 128 129 130 131 132 133 134 >> Отображать по:
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

Сенсация! В программу Олимпийских игр решили включить соревнования по распилу бревен на скорость. Однако с организацией турнира возникли некоторые сложности. Как уже известно, в турнире примут участие N спортсменов.

Турнир будет организован по следующей схеме: будет проведено T туров, причем первые T - 1 из них будут отборочными, а последний — финальным. В каждом из отборочных туров все оставшиеся спортсмены будут разбиты на \(A\) (\(A\) >= 2) подгрупп по ровно \(B\) (\(B\) >= 2) человек в каждой. Из каждой подгруппы дальше пройдут ровно C человек (1 <= \(C\) < \(B\)). Для каждого отборочного тура будут выбраны свои значения \(A\), \(B\) и \(C\). В финале все оставшиеся участники одновременно сразятся между собой, определив чемпиона.

Так как доход организаторов зависит от количества проданных билетов, а оно, в свою очередь, от количества туров, то организаторы хотят провести как можно больше туров. Однако сами они с этой задачей не справились, поэтому обратились к вам за помощью. Найдите максимально возможное количество туров, включая финальный, которое можно провести, выбирая значения \(A\), \(B\) и \(C\) для каждого из отборочных туров.

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

В первой строке входного файла задано единственное целое число \(N\) — количество участников турнира (1 <= \(N\) <= 1012).

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

Выведите единственное целое число — максимально возможное количество туров.

Система оценки

Тесты к этой задаче состоят из пяти групп.

0. Тесты 1–2. Тесты из условия, оцениваются в ноль баллов

1. Тесты 3–30. В тестах этой группы N <= 30. Эта группа оценивается в 25 баллов, баллы начисляются только при прохождении всех тестов группы.

2. Тесты 31–40. В тестах этой группы N <= 1 000. Эта группа оценивается в 25 баллов, баллы начисляются только при прохождении всех тестов группы. Решение будет тестироваться на тестах этой группы только в случае прохождения всех тестов первой. группы.

3. Тесты 41–50. В тестах этой группы N <= \(10^6\). Эта группа оценивается в 25 баллов, баллы начисляются только при прохождении всех тестов группы. Решение будет тестироваться на тестах этой группы только в случае прохождения всех тестов первой и второй групп.

4. В тестах этой группы дополнительные ограничения отсутствуют. Эта группа оценивается в 25 баллов. Решение будет тестироваться на тестах этой группы offline, т. е. после окончания тура, причем только в случае прохождения всех тестов первой, второй и третьей групп. Тесты в этой группе оцениваются независимо

Примеры
Входные данные
3
Выходные данные
1
Входные данные
6
Выходные данные
3
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

Был обычный весенний вечер. За окном завывала метель. Бухгалтер Евгений скучал на работе и с грустью вспоминал о своих былых успехах на олимпиадах по программированию. В его школьные годы на олимпиадах давали не больше восьми задач, и, разглядывая график своих успехов на сайте Topforces, ему удалось подсчитать, что в \(v_1\) олимпиадах он решил ровно 1 задачу, в \(v_2\) олимпиадах — ровно 2, \(\ldots\), в \(v_8\) олимпиадах — ровно 8 задач (Евгений предпочитал не вспоминать об олимпиадах, на которых он ничего не решил). К концу рабочего дня в офисе не осталось чистой бумаги, а из всех электронных устройств включенным оставался только калькулятор. Нашему герою ничего другого не оставалось, кроме как ввести памятные ему числа в калькулятор: \(v_1 1 v_2 2 \ldots v_8 8\). Стоит заметить, что никаких пробелов и других разделителей на калькуляторе Евгения не было, поэтому он записал эти числа просто подряд, получив некоторое число \(N\). Кроме того, он был достаточно ленив, поэтому все \(v_i\) вводил без ведущих нулей, а если какое-то \(v_i\) равнялось нулю, то соответствующую пару \(v_i i\) он просто не вводил.

Например, если \(v_2 = 111\), \(v_3 = 1\), а все остальные \(v_i = 0\), то у Евгения получилось бы число \(N = 111213\).

Уйдя с работы, Евгений оставил калькулятор с введенным числом \(N\) на столе, чем и воспользовалась его любопытная коллега Марина. Она сразу догадалась, как образовано введенное число, и уже собиралась приступать к расшифровке, как вдруг поняла, что различных наборов \((v_1, \ldots, v_8)\), из которых можно было получить это число, может быть достаточно много. Так, приведенное выше число \(N\) может быть получено также и при \(v_1 = 11\), \(v_3 = 21\).

Марина попросила вас найти количество таких наборов по модулю числа \(1\,000\,000\,007 = 10^9 + 7\).

Входные данные

Входной файл содержит единственное оставленное Евгением на калькуляторе целое число \(N\) (\(1 \leqslant N \lt 10^{1\,000\,000}\)).

Выходные данные

Выведите единственное целое число  количество различных наборов \((v_1, . . . , v_8)\), из которых описанным выше алгоритмом можно было получить число \(N\) , по модулю числа \(10^9 + 7\). 

Два набора \((v_1, . . . , v_8)\) и \((v′_1, . . . , v′_8)\) будем считать различными, если хотя бы для одного \(i\) от \(1\) до \(8\) \(v_i \ne v′_i\). 

Обратите внимание, что Евгений мог ошибиться и получить число \(N\), которое не соответствует ни одному набору \((v_1, . . . , v_8)\).

Система оценки
  • Подзадача 0 (0 баллов) тест из условия.
  • Подзадача 1 (30 баллов) в тестах этой группы \(1 \le N \lt 10^{10}\). Необходимые подгруппы: 0.
  • Подзадача 2 (30 баллов) в тестах этой группы \(1\le N \lt 10^{1000}\). Необходимые подгруппы: 0-1.
  • Подзадача 3 (40 баллов) без дополнительных ограничений. Необходимые подгруппы: 0-2.
Примеры
Входные данные
111213
Выходные данные
5
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

Компания «Nanosoft» готовится удивить мир принципиально новой игрой для смартфонов «Две башни». Ее ключевая особенность заключается в том, что играть в нее смогут даже самые маленькие дети. Во-первых, для управления используется всего одна кнопка. Во-вторых, проиграть просто невозможно (правда, игроку может надоесть часами нажимать на одну и ту же кнопку).

Игровое поле представляет собой бесконечную горизонтальную ленту, разбитую на ячейки, пронумерованные целыми числами слева направо (см. рис.). Изначально в ячейках с отрицательными номерами расположена армия монстров, у каждого из которых есть некоторое количество единиц здоровья. А именно, в ячейках \(-1, -2, \ldots, -K\) расположены монстры с 1 единицей здоровья, в следующих \(K\) ячейках (с номерами \(-(K+1), \ldots, -2K\)) расположены монстры с 2 единицами здоровья и так далее. Таким образом, для каждого целого положительного числа \(i\) в ячейке с номером \(-i\) изначально находится монстр с \(\left\lceil\frac{i}{K}\right\rceil\) единицами здоровья. Кроме того, на ленте расположены две башни, каждая из которых контролирует некоторый отрезок ленты: первой башне соответствуют все ячейки с \(A\) по \(B\) включительно, а второй - ячейки с \(C\) по \(D\) включительно (\(0 \leqslant A \leqslant B \lt C \leqslant D\)).

Например, при \(K = 3\), \(A = B = 1\), \(C = 3\), \(D = 4\) исходная позиция будет выглядеть следующим образом:


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

Игра заканчивается, как только впервые в ячейке с номером \(D + 1\) окажется монстр.

Как вы уже могли заметить, главная проблема игры заключается в том, что для выигрыша может потребоваться слишком много нажатий на кнопку, поэтому для некоторых особо сложных уровней решено ограничить возраст игроков, допускаемых к его прохождению. В связи с этим вам нужно определить, сколько нажатий на кнопку потребуется для победы на данном уровне, который описывается числами \(K\),\(A\), \(B\), \(C\) и \(D\).

Входные данные

В единственной строке входного файла содержатся 5 целых чисел \(K\), \(A\), \(B\), \(C\), \(D\) (\(1 \le K \le 10^9\), \(0 \le A \le B \lt C \le D \le 10^9\)). Соседние числа разделены одним пробелом.

Выходные данные

Выведите единственное натуральное число - ответ на задачу.

Примечание

Пошагово разберем первый тест.

Система оценки
  • Подзадача 0 (0 баллов) тесты из условия.
  • Подзадача 1 (30 баллов) \(1 \le K \le 10^3\), \(0 \le A \le B \lt C \le D \le 10^3\). Необходимые подгруппы: 0.
  • Подзадача 2 (30 баллов) \(1 \le K \le 10^5\), \(0 \le A \le B \lt C \le D \le 10^5\). Необходимые подгруппы: 0-1.
  • Подзадача 3 (40 баллов) без дополнительных ограничений. Потестовая. Необходимые подгруппы: 0-2.

Примеры
Входные данные
2 0 0 1 1
Выходные данные
7
Входные данные
3 1 1 3 4
Выходные данные
13
Входные данные
1 2 3 7 11
Выходные данные
17
ограничение по времени на тест
3.0 second;
ограничение по памяти на тест
512 megabytes

Даны три строки \(A\), \(B\), \(C\). Требуется выбрать строки \(A'\), \(B'\) и \(C'\) (возможно пустые, возможно совпадающие), так чтобы строка \(A\) удовлетворяла шаблону \(*A'*B'*\), строка \(B\) удовлетворяла шаблону \(*C'*A'*\), строка \(C\) удовлетворяла шаблону \(*B'*C'*\) и величина \(|A'| + |B'| + |C'|\) была максимальна.

Первая строка входного файла содержит единственное целое число \(N\) (\(1 \le N \le 2\,000\)) - длину каждой из входных строк. В следующих трех строках содержатся строки \(A\), \(B\) и \(C\), каждая из которых состоит из \(N\) строчных латинских букв.

Выведите единственное целое число - \(|A'| + |B'| + |C'|\). Если не существует строк \(A'\), \(B'\) и \(C'\), из которых можно получить данные три строки \(A\), \(B\) и \(C\), то выведите ноль.

Тесты к этой задаче состоят из четырех групп.
0. Тесты 1-3. Тесты из условия, оцениваются в ноль баллов.
1. Тесты 4-20. В тестах этой группы \(1 \le N \le 50\). Эта группа оценивается в 30 баллов.
2. Тесты 21-40. В тестах этой группы \(1 \le N \le 300\). Эта группа оценивается в 30 баллов.
3. В тестах этой группы дополнительные ограничения отсутствуют. Эта группа оценивается в 40 баллов.
Примеры
Входные данные
2
ac
ba
cb
Выходные данные
3
Входные данные
4
agtb
icea
tbhc
Выходные данные
4
Входные данные
3
abc
cde
dea
Выходные данные
2
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
256 megabytes

Каждое утро капитан Ъ проводит занятия по строевой подготовке в возглавляемой им роте солдат. Всего в роте N солдат, каждый из которых носит форму определенного цвета. Различных цветов формы не более 26, так что для удобства солдаты обозначают цвета строчными латинскими буквами. Таким образом, каждому из \(N\) солдат соответствует буква от 'a' до 'z' — цвет его формы.

За многие месяцы службы солдаты выяснили, что капитан пребывает в наилучшем расположении духа в том случае, когда цвета формы солдат в шеренге образуют определенную последовательность. Недолго думая, они выписали соответствующую строку \(S\) из \(N\) букв на асфальте и договорились, что отныне каждый должен при построении вставать именно на ту букву, которая соответствует цвету его формы.

Но к 23 февраля солдаты решили удивить капитана и поменяться местами так, чтобы \(каждый\) солдат встал не на ту букву, которая соответствует цвету его формы. Так, солдат с цветом формы 'q' может встать на любую букву, кроме буквы 'q', иначе удивление капитана будет недостаточным.

Помогите солдатам организовать праздничное построение: по данной строке \(S\), обозначающей старую последовательность цветов, выведите строку \(T\), являющуюся перестановкой символов строки \(S\) и обозначающую новую последовательность цветов. i-й символ строки T должен отличаться от i-го символа строки \(S\).

Входные данные

В первой строке входного файла содержится единственное целое число \(N\) — количество солдат в роте \((1 \le N \le 100 000)\). Во второй строке содержится строка S, состоящая из \(N\) строчных латинских букв.

Выходные данные

Единственная строка выходного файла должна содержать искомую строку \(T\), если задумка солдат осуществима, и «Impossible» в противном случае. Если верных ответов несколько, выведите любой из них.

Система оценки

Тесты к этой задаче состоят из четырех групп. Баллы за каждую группу тестов ставятся только при прохождении всех тестов группы.

0. Тесты 1—2. Тесты из условия, оцениваются в ноль баллов.

1. Тесты 3—21. В тестах этой группы \(N \le 9\). Эта группа оценивается в 30 баллов.

2. Тесты 22—36. В тестах этой группы \(N \le 200\), а строка не может содержать никаких букв, кроме 'a', 'b' и 'c'. Эта группа оценивается в 30 баллов независимо от первой.

3. В тестах этой группы дополнительные ограничения отсутствуют. Эта группа оценивается в 40 баллов.

Примеры
Входные данные
9
olimpiada
Выходные данные
iapdialom
Входные данные
7
baaaaaa
Выходные данные
Impossible

Страница: << 128 129 130 131 132 133 134 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест