Condición:
Dado dos arreglos de objetos. Cada objeto contiene un campo numérico 'code'. Devuelve un nuevo arreglo que contiene todos los objetos del arreglo a para los cuales existe un objeto en el arreglo b con el mismo valor 'code'. El orden de los elementos en el resultado está determinado por el orden del 'code' correspondiente en b: los objetos de a deben estar en el orden en que aparece su 'code' en b. Si en b aparecen varios objetos con el mismo 'code', solo se considera la primera aparición.
Datos de entrada:
- a — arreglo de objetos de la forma { code: number, ...rest }, longitud de 0 a 10^5
- b — arreglo de objetos de la forma { code: number, ...rest }, longitud de 0 a 10^5
Datos de salida:
Arreglo de objetos de a, filtrados y ordenados por la primera aparición del 'code' correspondiente en b.
Restricciones:
- 0 <= a.length, b.length <= 100 000
- El campo 'code' es un entero no negativo
- b puede contener duplicados en 'code' — solo se considera la primera aparición
Ejemplo de función:
```python
# Disponible sin import: json, sys, io
def intersect_by_code(a, b):
# Escribe la solución aquí
return []
```