Дано N предметов массой m1, …, mN. Ими наполняют рюкзак, который выдерживает вес не более M. Как набрать вес в точности M, используя как можно меньше предметов?
Первая строка входных данных содержит натуральное число N, не превышающее 100 и натуральное число M, не превышающее 10000.
Во второй строке находится N натуральных чисел mi, не превышающих 100.
Выведите наименьшее необходимое число предметов или 0, если набрать данный вес невозможно.
4 6 4 2 3 1
2
Дан набор гирек массой m1, …, mN. Можно ли их разложить на две чаши весов, чтобы они оказались в равновесии?
Первая строка входных данных содержит натуральное число N, не превышающее 100. Далее идет N натуральных чисел mi, не превышающих 100.
Программа должна вывести YES, если гирьки можно разложить на две кучки равной массы или NO в противном случае.
4 4 2 3 1
YES
Дан набор гирек массой m1, …, mN. Разделите этот набор на две кучки равной массы, содержащие равное число гирек.
Формат входных данных
Первая строка входных данных содержит натуральное число N, не превышающее 100. Далее идет N натуральных чисел mi, не превышающих 100.
Необходимо вывести в первой строчке номера гирек (числа от 1 до N), входящие в первую кучку, во второй строчке — номера гирек во второй кучке. Если задача не имеет решения, выведите строку No solution.
4 4 2 3 1
2 3 1 4
Дан набор гирек массой m1, …, mN. Можно ли их разложить на три кучки равной массы?
Первая строка входных данных содержит натуральное число N, не превышающее 60. Далее идет N натуральных чисел mi, не превышающих 60.
Программа должна вывести номера гирек для каждого из наборов в три строки или строчку No solution, если решения не существует.
5 4 2 3 1 5
5 1 4 2 3
Дан набор гирек массой m1, …, mN. Можно ли их разделить на четыре кучки равной массы?
Первая строка входных данных содержит натуральное число N, не превышающее 14. Далее идет N натуральных чисел mi, не превышающих 100.
Программа должна вывести номера гирек для каждого из наборов в четыре строки или строчку No solution, если решения не существует.
8 10 20 30 40 50 60 70 80
1 8 2 7 3 6 4 5