В качестве одного из упражнений по кодированию я попытался напечатать путь, с которым вы столкнетесь, чтобы найти конкретную сумму, в этом случае: 3.
Приращивающиеся значения будут 1 и 2. Таким образом, самый короткийпуть к сумме будет return [1,2] or [2,1].
Но я не могу попытаться указать путь к массиву - я попытался поместить индексы через параметры, но массив будет перезаписан (неудивительно).Кто-нибудь может подсказать, как решить эту проблему?
const toSum = target => {
const calc = sum => {
if (sum == target) return 0;
if (sum > target) return Infinity;
const temp1 = 1 + calc(sum + 2);
const temp2 = 1 + calc(sum + 1);
return Math.min(temp1, temp2);
};
return calc(0);
};
console.log(toSum(3));