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

Даны два натуральных числа N и K. Требуется вывести  все цепочки x1, x2, ..., xN такие, что xi - натуральное и 1 ≤ xiK.

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

Вводятся два натуральных числа N и K (N, K ≤ 6).

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

Выведите все требуемые цепочки в произвольном порядке – по одной на строке. Никакая цепочка не должна встречаться более одного раза.

Примеры
Входные данные
2 3
Выходные данные
1 1 
1 2 
1 3 
2 1 
2 2 
2 3 
3 1 
3 2 
3 3 
Максимальное время работы на одном тесте: 1 секунда

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

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

На вход программы  сначала поступает число N (1 <= N <= 109), затем - число M (1 <= M <= 15) и далее M попарно различных чисел A1, A2,..., AM (1 <= Ai <= 109).

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

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

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

Примеры
Входные данные
100 6
11 20 30 40 11 99
Выходные данные
3
40 30 30 
#187
  
Темы: [Сочетания]
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Максимальное время работы на одном тесте: 1 секунда

Требуется найти число способов расставить на шахматной доске NxN K ладей так, чтобы они не били друг друга. Все ладьи считаются одинаковыми.

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

Во входном файле записаны натуральные числа N и K (N, K <= 8).

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

В выходной файл выведите одно целое число - ответ задачи.

Примеры
Входные данные
8 8
Выходные данные
40320
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes
Максимальное время работы на одном тесте: 1 секунда

На день рождения Пете подарили набор карточек с буквами. Теперь Петя с большим интересом составляет из них разные слова. И вот, однажды, составив очередное слово, Петя заинтересоваля вопросом: "А сколько различных слов можно составить из тех же карточек, что и данное?". Помогите ему ответить на этот вопрос.

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

Вводится слово, составленное Петей – строка из маленьких латинских букв не длиннее 15 символов.

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

Выведите одно целое число – искомое количество слов.

Примеры
Входные данные
solo
Выходные данные
12
Максимальное время работы на одном тесте: 1 секунда

В результате очередной хитроумной комбинации у Остапа Бендера и его компаньонов – K детей лейтенанта Шмидта оказалось X рублей пятирублевыми банкнотами. И вот дело, как водится, дошло до дележа...

Шура Балаганов предложил делить "по справедливости", т.е. всем поровну. Паниковский порешил себе отдать половину, а остальным "по заслугам". Каждый из K детей лейтенанта предложил что-нибудь интересное. Однако, у Великого Комбинатора имелось свое мнение на этот счет...

Ваша же задача состоит в нахождении количества способов разделить имеющиеся деньги между всеми участниками этих славных событий: K детьми лейтенанта Шмидта и Остапом Бендером.

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

Вводятся целые числа X (0 ≤ X ≤ 500) и K (0 ≤ K ≤ 100). Естественно, что число X делится на 5. Да, и при дележе рвать пятирублевые банкноты не разрешается.

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

Выведите одно целое число – количество способов дележа.

Примеры
Входные данные
15 2
Выходные данные
10

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