Concatenar para formar el arreglo objetivo

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

Ejemplos

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

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

can_concatenate([[2, 1, 3], [5, 4, 7, 6, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ false
# El 7 está repetido y no se encuentra así en el arreglo objetivo.

can_concatenate([[2, 1, 3], [5, 4, 7]], [1, 2, 3, 4, 5, 6, 7]) ➞ false
# Falta el 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).