Темы --> Информатика --> Алгоритмы --> Перебор --> Простые задачи на перебор
---> 43 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: 1 2 3 4 5 6 7 >> Отображать по:
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes

В Волшебной стране используются монетки достоинством A1, A2,…, AM. Волшебный человечек пришел в магазин и обнаружил, что у него есть ровно по две монетки каждого достоинства. Ему нужно заплатить сумму N. Напишите программу, определяющую, сможет ли он расплатиться без сдачи.

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

Сначала вводится число N (1N109), затем — число M (1M15) и далее M попарно различных чисел A1, A2,…, AM (1Ai109).

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

Выведите сначала K — количество монет, которое придется отдать Волшебному человечку, если он сможет заплатить указанную сумму без сдачи. Далее выведите K чисел, задающих достоинства монет. Если решений несколько, выведите вариант, в котором Волшебный человек отдаст наименьшее возможное количество монет. Если таких вариантов несколько, выведите любой из них.

Если без сдачи не обойтись, то выведите одно число 0. Если же у Волшебного человечка не хватит денег, чтобы заплатить указанную сумму, выведите одно число –1 (минус один).

Оценка задачи

1 балл получат программы, правильно решающие задачу с дополнительными ограничениями Ai106, M10.

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

В компании MacroHard в последнее время резко участились опоздания сотрудников. Проанализировав ситуацию, руководство решило, что это вызвано большим разбросом в показаниях наручных часов сотрудников. После дополнительного совещания руководящего состава было постановлено, что все сотрудники должны перевести часы на одно и то же время (не важно какое).

Все сотрудники компании носят исключительно электронные часы одного образца. Время на них отображается в формате HH:MM:SS (где HH — часы, MM — минуты, SS — секунды, всегда отображаются в виде двух цифр, 00HH23, 00MM59, 00SS59). Перевод часов осуществляется с помощью двух кнопок. Первая кнопка меняет поле редактирования следующим образом: после первого нажатия часы переходят из режима отображения времени в режим редактирования поля HH, после второго — в режим редактирования поля MM, после третьего — в режим редактирования поля SS, а после четвертого возвращаются в режим отображения времени и т.д. по циклу. Каждое нажатие второй кнопки приводит к увеличению редактируемого поля на единицу (в режиме отображения времени ничего не происходит). При переполнении секунд поле SS обнуляется, а MM увеличивается на единицу, при переполнении минут поле MM обнуляется, а HH увеличивается на единицу, а при переполнении часов просто обнуляется поле HH.

И все бы хорошо, но, в силу своей природной лени, сотрудники хотят минимизировать суммарное число нажатий кнопок при переводе часов. При этом после перевода часов все часы должны оказаться в режиме отображения времени, в начале все часы также находятся в этом режиме.

Напишите программу, определяющую минимальное суммарное количество нажатий кнопок, достаточное для перевода часов всеми сотрудниками к одному времени.

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

Первая строка входных данных содержит натуральное число N (1N200) — количество сотрудников компании. Последующие N строк содержат показания часов каждого из сотрудников в формате "HH:MM:SS".

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

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

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

1 балл получат программы, правильно решающие задачу при ограничении 1N2.

Примеры
Входные данные
2
08:01:01
07:59:00
Выходные данные
7
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Теорема Лагранжа утверждает, что любое натуральное число можно представить в виде суммы четырех точных квадратов. По данному числу n найдите такое представление: напечатайте от 1 до 4 натуральных чисел, квадраты которых дают в сумме данное число.

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

Программа получает на вход одно натуральное число n < 10000.

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

Программа должна вывести от 1 до 4 натуральных чисел, квадраты которых дают в сумме данное число.

Примеры
Входные данные
3
Выходные данные
1 1 1
Входные данные
7
Выходные данные
2 1 1 1
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Представьте данное число n в виде суммы двух кубов.

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

Программа получает на вход одно натуральное число n(n <= 1028).

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

Программа должна вывести 2 целых неотрицательных числа, сумма кубов которых равна n. Если это невозможно, выведите строку impossible.

Примеры
Входные данные
2
Выходные данные
1 1
Входные данные
3
Выходные данные
impossible
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Два различных натуральных числа n и m называются дружественными, если сумма делителей числа n (включая 1, но исключая само n) равна числу m и наоборот. Например, 220 и 284 – дружественные числа. По данному числу k выведите все пары дружественных чисел, каждое из которых не превосходит k.

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

Программа получает на вход одно натуральное число k, не превосходящее 105.

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

Программа должна вывести  все пары дружественных чисел, каждое из которых не превосходит k. Пары необходимо выводить по одной в строке, разделяя пробелами. Каждая пара должна быть выведена только один раз (перестановка чисел новую пару не дает).

Примеры
Входные данные
300
Выходные данные
220 284

Страница: 1 2 3 4 5 6 7 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест