Системы счисления(36 задач)
"Длинная" арифметика(58 задач)
Простые числа и разложение на множители(45 задач)
Остатки(21 задач)
Быстрое возведение в степень(3 задач)
Быстрое преобразование Фурье(3 задач)
Число называется совершенным, если оно равно сумме всех своих делителей, меньших его самого. Требуется найти все совершенные числа от \(M\) до \(N\).
В первой строке находятся разделённые пробелом числа \(M\) и \(N\). \(M\) и \(N\) целые, 1 <= \(M\) <= \(N\) <= \(10^9\), (\(N\) - \(M\)) * sqrt(\(N\)) <= \(10^7\).
В каждой строке вывести по одному числу в порядке возрастания. Если совершенных чисел в промежутке нет, вывести "Absent".
6 496
6 28 496
7 495
28
Даны целое неотрицательное число \(M\) и целое положительное число \(N\). Найти \(M\) div \(N\) и \(M\) mod \(N\).
В первой строке находится число \(M\), во второй - \(N\). 0 <= \(M\) <= 1060 000, 1 <= \(N\) <= 1 000 000.
В первой строке вывести значение выражения \(M\) div \(N\) во второй - выражения \(M\) mod \(N\).
7 3
2 1
Дано целое неотрицательное число в \(I\)-ричной системе счисления. Вывести это число в \(J\)-ричной системе счисления.
В первой строке находятся числа \(I\) и \(J\) (в десятичной системе счисления), во второй строке - число для перевода. 2 <= \(I\), \(J\) <= 36, для представления цифр 10...35 используются прописные латинские буквы \(A\)...\(Z\) соответственно, число разрядов исходного числа не превышает 1000.
Вывести искомое число. Если число начинается с буквы, перед ней не должно быть нуля.
10 10 1
1
Вывести в порядке возрастания все несократимые дроби, заключённые между 0 и 1, знаменатели которых не превышают \(N\).
В первой строке находится единственное число \(N\). 2 <= \(N\) <= 255.
В каждой строке выводится дробь.
5
1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5
4
1/4 1/3 1/2 2/3 3/4
Сообщения SMS сотового телефона MOBILA составлены из прописных латинских букв. Если буква первая на кнопке, нужно нажать эту кнопку один раз, чтобы добавить букву в сообщение. Если буква вторая - нужно нажать кнопку дважды и т.д. Так, чтобы набрать слово "SMS", нужно нажать
(PQRS)(PQRS)(PQRS)(PQRS)(MNO)(PQRS)(PQRS)(PQRS)(PQRS)
Чтобы ввести две буквы, находящиеся на одной кнопке, нужно между нажатиями клавиши сделать паузу. Например, чтобы ввести сообщение "AA", нужно нажать
(ABC)(пауза)(ABC)
Если на кнопке три буквы, то, как только такая кнопка нажата три раза, последняя буква добавляется в сообщение немедленно, а следующие нажатия той же кнопки относятся к следующей букве сообщения. Аналогично, если на кнопке четыре буквы, то после четырёх нажатий в сообщение будет добавлена последняя буква. То есть последовательность нажатий
(ABC)(ABC)(ABC)(ABC)(пауза)(ABC)
соответствует сообщению "CAA". К сожалению, сотовые телефоны этой модели давно не производятся, и остался только один такой телефон. Он может произвольно вставлять и игнорировать паузы во время ввода сообщения, что может привести к некоторым изменениям в сообщениях. Например, введя MOSCOWQUARTERFINAL, можно получить вместо этого OMSCMNWQTTARTERPDEINAL. Вы получили SMS-сообщение и знаете, что оригинальное сообщение содержало N букв. Чтобы определить вероятность угадывания оригинального сообщения, найдите число возможных сообщений, которые могли превратиться в то, которое Вы получили.
В первой строке задана длина оригинального сообщения \(N\). Вторая строка содержит полученное SMS-сообщение. 1 <= \(N\) <= 80, полученное сообщение состоит только из прописных латинских букв, длина полученного сообщения - от 1 до 80 букв.
Вывести число сообщений из \(N\) букв, которые, будучи набранными на на этом телефоне, могут превратиться в данное сообщение.
8 ADGJMPTW
1
9 ADGJMPTW
0