1. Множники
Максимальна оцінка: 12 балів
Обмеження на час: 0,15 сек.
Обмеження на пам’ять: 4 MБ
Вхідний файл: factor.in
Вихідний файл: factor.out
Програма: factor.*
Завдання
Створіть програму, яка розкладе многочлен з цілими коефіцієнтами на множники — многочлени з цілими коефіцієнтами, що вже неможливо розкласти на множники-двочлени з цілими коефіцієнтами. Розв'язання задачі не вимагає подання чисел масивами їхніх цифр, якщо на зберігання цілих чисел відведено 4 байти.
Вхідні дані
Вхідний файл містить у вказаному порядку натуральне число n — степінь многочлена й (n + 1) ціле число — коефіцієнти многочлена в порядку спадання степеня від n до 0 включно, n < 100.
Вихідні дані
Перший рядок файлу містить знак старшого коефіцієнта многочлена та найбільший спільний дільник всіх його коефіцієнтів.
Кожний наступний рядок цього самого файлу містить у вказаному порядку такі цілі числа:
Порядок рядків вихідного файлу, починаючи з другого, довільний. Це стосується і рядка даних про дільник многочлена, що не є двочленом (остача від ділення многочлена на всі його дільники-двочлени, враховуючи їх кратність).
Кожне число вихідного файлу має не більше двох цифр.
Приклад
factor.in | factor.out |
---|---|
7 -84 84 -133 196 -140 77 -35 7 |
-7 2 1 2 -1 1 2 3 0 1 1 3 1 0 1 -1 |
2. Шашка на кубі
Максимальна оцінка: 16 балів
Обмеження на час: 0,15 сек.
Обмеження на пам’ять: 4 MБ
Вхідний файл: draught.in
Вихідний файл: draught.out
Програма: draught.*
Поверхню куба відрізками, паралельними до ребер куба, поділено на квадратні клітини, довжина сторін яких у l (непарне натуральне число) разів менша за довжину ребра куба. Шашку пересувають за один хід з клітини на довільну суміжну з нею (що має з даною спільну сторону).
Завдання
Створіть програму, яка обчислить, скількома різними способами може шашка потрапити за m ходів з клітини в центрі однієї ґрані на клітину, розташовану в центрі суміжної ґрані.
Вхідні дані
Вхідний файл містить натуральні числа l та m, де l < 52, m < 200.
Вихідні дані
Вихідний файл має містити ціле число — шукану кількість способів.
Приклад
draught.in | draught.out |
---|---|
3 3 | 1 |