No, è sbagliato, le due tabelle posso avere un numero diverso di righe, inoltre ci possono essere buchi fra due righe:
Magazzino Negozio
1 1
3 2

La tua implementazione non rispetta nessuno dei due criteri.

Oltretutto è inutile fare un ciclo su [1,2) perché l'unico valore che può assumere è 1.

Per risolvere il problema puoi scorrere contemporaneamente i due array per riga. Si possono presentare 3 casi (M codice tablet magazzino, N codice tablet negozio, qt(m/n)=quantità in magazzino o negozio):

M=N hai qtm(M)+qtn(M) tablet del modello M, avanzi entrambi

M<N hai qtm(M) tablet del modello M avanzi il magazzino

M>N hai qtn(N) tablet del modello N avanzi il negozio

I risultati possono essere al più K+Y quando tutti i modelli sono diversi.