массив [71, 90, 35, 5, 60, 110]. Из него нужно выбрать два числа которые будут ближе к 80, это 71 и 5. Как эти два числа найти?
const truckSpace = 110
const packages = [71, 90, 35, 5, 60, 110]
const whichPackagesToLoad = (truckSpace, packages) => {
const twoPackages = [];
const reservedSpace = 30
const freeSpace = truckSpace - reservedSpace
console.log("freeSpace:", freeSpace)
for (let i = 0; i < packages.length; i++) {
for (let q = 1; q < packages.length; q++) {
if (packages[i] + packages[q] === freeSpace ) {
twoPackages.push(packages[i])
twoPackages.push(packages[q])
}
//if() ???????
}
}
return twoPackages
}
console.log(whichPackagesToLoad(truckSpace, packages))
ближе, но не превышать или как?
дада, ближе но не превышать
let result = [0, 0]; let sum = 0; for (let i = 0; i < packages.length; i++) { for (let j = i + 1; j < packages.length; j++) { const currentSum = packages[i] + packages[j]; if (currentSum < freeSpace && currentSum > 80) { result = [packages[i], packages[j]]; sum = currentSum; } } } типа того?
Обсуждают сегодня