Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

171
Visualizações
Encuentre el elemento de matriz que es verdadero para TODOS los elementos en la segunda matriz

Estoy tratando de encontrar el múltiplo común más pequeño de una matriz comparándolo con los valores en la otra usando % num === 0 . La respuesta debería ser 6, pero debido a que cada número en la primera matriz es verdadero al menos una vez, se devuelven todos. ¿Cómo encuentro el valor que solo es verdadero y nunca falso?

 let arr = [1, 2, 3] function test(arr) { let x = [1, 2, 3, 4, 5, 6, 7, 8] for (let n of arr) { return x.filter(k => k % n === 0) } } console.log(test(arr))

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Necesita recorrer la matriz x y devolver el primer elemento que se divide por every valor en arr .

 let arr = [1, 2, 3]; function test(arr) { let x = [1, 2, 3, 4, 5, 6, 7, 8]; for (let n of x) { if (arr.every((a) => n % a === 0)) { return n; } } } console.log(test(arr));

También puede simplemente encontrar la solución usando Array.prototype.find .

 const arr = [1, 2, 3], test = (arr) => [1, 2, 3, 4, 5, 6, 7, 8].find((n) => arr.every((a) => n % a === 0)); console.log(test(arr));

Nota: si x no está ordenado, primero tendrá que ordenarlo.

 const arr = [1, 2, 3], test = (arr) => [8, 7, 6, 5, 4, 3, 2, 1] .sort((a, b) => a - b) .find((n) => arr.every((a) => n % a === 0)); console.log(test(arr));

Actualización basada en el comentario de OP

Puede usar Array.prototype.filter y Array.prototype.some .

 const arr = [1, 2, 3], test = (arr) => [1, 2, 3, 4, 5, 6, 7, 8].filter((n) => arr.some((a) => n / a === 2)); console.log(test(arr));

about 4 years ago · Juan Pablo Isaza Relatório

0

Filtrar e intersectar

 let arr = [1, 2, 3] let x = [1, 2, 3, 4, 5, 6, 7, 8] function test(arr) { let common = [] arr.forEach(n => common.push(x.filter(k => k % n === 0))) return common.reduce((acc, cur) => acc.filter(e => cur.includes(e))); } console.log(test(arr))

about 4 years ago · Juan Pablo Isaza Relatório

0

Si x está ordenado, puede usar find y every

 let arr = [1, 2, 3] let x = [1, 2, 3, 4, 5, 6, 7, 8, 12] let res = x.find(n => arr.every(a => n%a === 0)) console.log(res)

si no clasificado x

 let arr = [1, 2, 3] let x = [1, 12, 6, 4, 2, 7, 8] let res = [...x].sort((a,b)=> ab).find(n => arr.every(a => n%a === 0)) console.log(res)

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda