Új hozzászólás Aktív témák

  • lanszelot
    addikt

    Kicsit gondolkoztam rajta, nekem a következő jutott eszembe: sorbarendezed mindkét tömböt és az elejéről indulsz két indexszel (i indexeli az A tömböt, j meg a B tömböt). Ha A != B[j], akkor mindkét indexet növeled. Ha A(i) == B[j], akkor növeled a számlálót és megnézed A[i + 1]-et és B[j + 1]-et. Ha ezek is egyeznek A(i)-vel vagy B[j]-vel, akkor növeled i-t és j-t is. Ha csak az egyik egyezik (mondjuk A[i + 1] már más, de B[j + 1] még nem), akkor i-t addig növeled, amíg ráfutsz a következő számra, j-t meg csak 1-gyel, és jöhet elölről az egész, amíg i vagy j el nem éri a tömb végét. Nem csináltam rá kódot, szóval lehet valami edge case-t kihagytam, de én így indulnék neki.

    nem jó a sorrend, mert lehet hogy mind piros az egyikben

    ami a példában van az se jó. Elsőre annak tűnik, de nem az. Betettem a példába ahol nem jó.
    Ha több egyforma van az egyikben és csak egy a másikban akkor is többször számolja.

    Tehát még sincs megoldás. :(

    próbáltam már for -al, azzal nem lehet.
    if-el azzal se lehet.
    nem tudom hogy lehet megoldani.

Új hozzászólás Aktív témák