В этом вопросе вам задано значение V и список уникальных целых чисел. Ваша задача - найти количество различных подмножеств размера 4, которые суммируются с V. Каждый элемент в списке может использоваться только один раз. Если ни одно из таких подмножеств не может быть найдено, вместо этого выведите 0.Что такое Clojure для реализации for-loop?
Например, если целые числа являются [3, 4, 5, 6, 7, 8, 9, 10]
и значение 30
, выход должен быть 5. подмножества:
[3, 8, 9, 10]
[4, 7, 9, 10]
[5, 6, 9, 10]
[5, 7, 8, 10]
[6, 7, 8, 9].
Это не трудно решить этот вопрос, самый прямой путь к гнездо для петли четыре раза. Каков способ Clojure для этого?
Очень красивый, просто чтобы проиллюстрировать ответ: '(решить [3, 4, 5, 6, 7, 8, 9, 10] 4 30) ((3 8 9 10) (4 7 9 10) 5 6 9 10) (5 7 8 10) (6 7 8 9)) ' –
@JamesSharp Thanx! Добавил ваш пример к моему ответу. –
Функция comp великолепна! Спасибо. – Nick