Conditie:
Doi array-uri de obiecte. Fiecare obiect conține un câmp numeric 'code'. Returnați un nou array care conține toate obiectele din array-ul a pentru care există un obiect în array-ul b cu aceeași valoare 'code'. Ordinea elementelor în rezultat este determinată de ordinea corespunzătoare a 'code'-ului în b: obiectele din a trebuie să fie aranjate în ordinea în care apare 'code'-ul lor în b. Dacă în b apar mai multe obiecte cu același 'code', se consideră doar prima apariție.
Date de intrare:
- a — array de obiecte de forma { code: number, ...rest }, lungime de la 0 la 10^5
- b — array de obiecte de forma { code: number, ...rest }, lungime de la 0 la 10^5
Date de ieșire:
Array de obiecte din a, filtrate și ordonate după prima apariție a 'code'-ului corespunzător în b.
Restricții:
- 0 <= a.length, b.length <= 100 000
- Câmpul 'code' este un număr întreg nenegativ
- b poate conține duplicate în 'code' — se consideră doar prima apariție
Exemplu de funcție:
```python
# Disponibil fără import: json, sys, io
def intersect_by_code(a, b):
# Scrie soluția aici
return []
```