Concatenar para formar el arreglo objetivo

Crea una función que devuelva true si los arreglos más pequeños se pueden concatenar para formar el arreglo objetivo y false en caso contrario.

Ejemplos

canConcatenate([[1, 2, 3, 4], [5, 6], [7]], [1, 2, 3, 4, 5, 6, 7]) ➞ true

canConcatenate([[2, 1, 3], [5, 4, 7, 6]], [7, 6, 5, 4, 3, 2, 1]) ➞ true

canConcatenate([[2, 1, 3], [5, 4, 7, 6, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ false
// Valores 7 duplicados que no se encuentran en el arreglo objetivo.

canConcatenate([[2, 1, 3], [5, 4, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ false
// Falta el valor 6 en el arreglo objetivo.

Notas

  • Los arreglos no tienen que estar ordenados (consulta el ejemplo n.º 2).
  • Los arreglos deben concatenarse para crear exactamente el arreglo final (consulta los ejemplos n.º 3 y n.º 4).