Mejor viaje (Code Wars)
function chooseBestSum(t, k, ls) {
let arr = [];
function rec(sum, ar, n) {
if (n == 0) {
arr.push(sum);
}
else {
for (let i = 0; i < ar.length; i++) {
rec(sum+ar[i], ar.slice(i+1), n-1);
}
}
}
rec(0, ls, k);
var sol = arr.sort( (a, b) => b - a).find( a => a <= t);
return typeof sol === 'undefined' ? null : sol;
}
console.log(chooseBestSum(230, 3, [10, 25, 12, 20, 1])) // , 228)
Innocent