Javascript 获取一组相加形成一个数字的数字
我有一个n=8和k=4的数字 我想把n排列成k的一组,加起来就是n 例如: 假设n=7和k=3,预期结果应该是:{11,5},{1,2,4},{1,3,3},{2,2,3},即(4) n=4和k=2预期结果应为:{2,2},{1,3},即(2) 我试着找一对加起来就是一个数字的。 我想知道如何在不单独求解k的情况下有效地求解它Javascript 获取一组相加形成一个数字的数字,javascript,arrays,Javascript,Arrays,我有一个n=8和k=4的数字 我想把n排列成k的一组,加起来就是n 例如: 假设n=7和k=3,预期结果应该是:{11,5},{1,2,4},{1,3,3},{2,2,3},即(4) n=4和k=2预期结果应为:{2,2},{1,3},即(2) 我试着找一对加起来就是一个数字的。 我想知道如何在不单独求解k的情况下有效地求解它 function answerQuery(n, k) { const items = []; let pairs = 0 for (let i = 1;
function answerQuery(n, k) {
const items = [];
let pairs = 0
for (let i = 1; i < n; i++) {
items.push(i)
}
let a = 0;
let b = items.length - 1;
while (a <= b) {
let tmp = items[a] + items[b];
if (tmp == n) {
pairs ++
}
a++;
b--;
}
return pairs
}
函数应答查询(n,k){
常量项=[];
设对=0
for(设i=1;i while(a)在这个函数中,你在哪里使用k
?我可以用k来检查```如果k=2,它应该执行两个数字的配对,并且对所有发生的k值都执行。我不想要这个。我想要迎合所有发生的k值,而不是对所有发生的k值执行if条件。