Задача A. A плюс B

Автор:Антон Карабанов   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:256 Мб
Выходной файл:Стандартный выход  
Максимальный балл:100  

Условие

Найдите сумму двух предложенных Вам натуральных чисел и оформите решение примера в столбик.

Формат входных данных

Первая строка входного файла содержит натуральное число: a, вторая — b.

Формат выходных данных

Выведите четыре строки: в первой должно находиться исходное число a, во второй b, в третьей должны быть символы '-' (ASCII код 45) в количестве, равном длине суммы чисел a и b, в четвертой — само значение суммы. Все строки должны быть выравнены по правому краю, длины всех строк должны равняться длине последней строки, для выравнивания остальных строк используйте символ '.' (ASCII код 46).

Ограничения

1 ≤ a, b ≤ 109

Система оценки и описание подзадач

Баллы за каждый тест начисляются независимо.

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

Стандартный вход Стандартный выход
1
24
9976
...24
.9976
-----
10000

Задача B. Различные диагонали

Автор:Антон Карабанов   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:64 Мб
Выходной файл:Стандартный выход  
Максимальный балл:100  

Условие

Сколько существует различных диагоналей у правильного n-угольника?

Формат входных данных

Единственная строка входного файла содержит натуральное число n — количество сторон правильного n-угольника.

Формат выходных данных

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

Ограничения

3 ≤ n ≤ 109

Система оценки и описание подзадач

Баллы за каждый тест начисляются независимо.

Пояснение к примеру

В первом примере: правильный треугольник вообще не имеет диагоналей. Во втором примере: правильный пятиугольник имеет пять диагоналей.

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

Стандартный вход Стандартный выход
1
3
0
2
5
5

Задача C. Задачи для Фибоначчи

Автор:Антон Карабанов   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:256 Мб
Выходной файл:Стандартный выход  
Максимальный балл:100  

Условие

Леонардо Пизанский размышляет над следующей задачей: сколько чисел среди первых n членов его знаменитой последовательности чисел Фибоначчи оканчиваются на цифру d?

Для определенности будем считать, что нумерация чисел начинается с единицы, то есть:

F(1) = 1

F(2) = 1

F(n) = F(n - 1) + F(n - 2)

Формат входных данных

Первая строка входного файла содержит натуральное число n, вторая — цифру d.

Обратите внимание, что при заданных ограничениях для хранения ответа необходимо использовать 64-битный тип данных, например long long в C++, int64 в Free Pascal, long в Java.

Формат выходных данных

Выведите одно неотрицательное целое число — количество подходящих членов последовательности.

Ограничения

1 ≤ n ≤ 1018

0 ≤ d ≤ 9

Система оценки и описание подзадач

Баллы за каждый тест начисляются независимо.

Решения, верно работающие при n ≤ 105, получат не менее 40 баллов.

Пояснение к примеру

В примере дано n = 20 и d = 4. Среди первых двадцати чисел Фибоначчи на цифру 4 оканчиваются три: F(9) = 34, F(12) = 144 и F(18) = 2584.

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

Стандартный вход Стандартный выход
1
20
4
3

Задача D. Угол тупой и ещё тупее

Автор:Антон Карабанов   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:256 Мб
Выходной файл:Стандартный выход  
Максимальный балл:100  

Условие

Ровно в h часов m минут профессор математики Шестерёнкин посмотрел на свои любимые наручные часы и заметил, что угол между часовой и минутной стрелками был тупым. Ровно через k минут профессор вновь посмотрел на свои часы и обратил внимание, что угол между стрелками стал ещё более тупым. Более того — ровно через k минут угол стал еще "тупее", и так ровно n раз подряд! Шестерёнкин потерял покой и сон и каждые k минут методично проверял величину угла. Наконец, на n + 1 раз эта традиция нарушилась. Облегченно вздохнув, математик наконец смог уснуть. А вот проснувшись, он совершенно забыл, в какой момент времени первый раз посмотрел на часы. Хорошо, что у него есть знакомый программист, на которого можно взвалить эту задачу!

Формат входных данных

Первая строка входного файла содержит два натуральных числа, записанных через пробел: k и n.

Формат выходных данных

Выведите подходящее время, когда профессор мог в первый раз посмотреть на часы (восстановите значения h и m). Гарантируется непротиворечивость входных данных. Считайте, что у профессора часы с обычным 12-часовым циферблатом, всегда показывающие точное время. Под углом между стрелками будем понимать наименьший из двух (например, в 08:00 величина такого угла равна 120, а в 08:30 равна 75). Если подходящих значений h и m несколько, выведите такое, при котором h минимально, если и таких несколько — при котором m минимально. Числа выводите в формате с ведущими нулями, разделите их символом ':' (ASCII-код 58)

Ограничения

1 ≤ k ≤ 719

1 ≤ n ≤ 90

Система оценки и описание подзадач

Баллы за каждый тест начисляются независимо.

Пояснение к примеру

В приведенном примере профессор посмотрел на часы первый раз в 00:17 (угол между стрелками был 93.5).

После этого, 3 раза подряд каждые пять минут угол становился всё "тупее" (121 в 00:22, 148.5 в 00:27 и, наконец, 176 в 00:32).

Ещё через пять минут, в 00:38 угол становится равным 156.5 и Шестерёнкин засыпает.

Но даже во сне он помнит, что тупой угол (от 90 до 180) не включает граничные значения.

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

Стандартный вход Стандартный выход
1
5 3
00:17

Задача E. Система счисления остатков

Автор:Антон Карабанов   Ограничение времени:1 сек
Входной файл:Стандартный вход   Ограничение памяти:64 Мб
Выходной файл:Стандартный выход  
Максимальный балл:100  

Условие

Никита и Женя во время уроков часто обмениваются записками с сообщениями. Естественно, они не заинтересованы в том, чтобы их сообщения могли прочитать другие ученики, поэтому ребята договорились шифровать все слова.

Очень долго ребята не могли договориться, как шифровать числа. Сначала они писали число задом наперед, потом в двоичной системе счисления, потом азбукой Морзе... Но проблема в том, что класс, где учатся ребята — с математическим уклоном, а все вышеперечисленные кодировки слишком просты. Наконец, Женя предложил такой способ.

Будем кодировать число при помощи остатков от его деления на первые 11 простых чисел (2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31). Например, число 10 при делении на 2 даст в остатке 0 — записываем эту цифру первой. При делении на 3 число 10 даст в остатке 1 — записываем эту цифру второй. Если остаток получается двузначным (это может произойти при делении на простые числа от 11 до 31), то записываем его как цифру в 36-ой системе счисления (число 10 там запишется как A, 11 — как B, и так далее). Полученная строка из одиннадцати остатков и будет представлением исходного числа. Например, число 10 запишется как 0103AAAAAAA.

Ребята быстро убедились, что все натуральные числа от 1 до 200560490130 кодируются различным представлением. С самим кодированием проблем тоже не возникло — найти 11 остатков от деления ребятам не сложно. А вот обратный процесс (по данному представлению восстановить исходное число) вызвал у ребят затруднение. Помогите им!

Формат входных данных

Единственная строка входного файла содержит строку из 11 символов. Гарантируется, что все символы либо десятичные цифры, либо заглавные английские буквы.

Формат выходных данных

Выведите одно натуральное число n — исходное закодированное число. Гарантируется, что оно не превышало 2 × 1011.

Ограничения

1 ≤ n ≤ 2 × 1011

Система оценки и описание подзадач

Баллы за каждый тест начисляются независимо.

Решения, верно работающие при 1 ≤ n ≤ 100, получат не менее 20 баллов.

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

Стандартный вход Стандартный выход
1
0103AAAAAAA
10

0.246s 0.014s 23