Aktywne Wpisy
Riolet +45
#samochodoza #konfitura co za dzień, dwóch bezrobotnych prowokatorów, w tym jeden ukr, zaatakowali 78 letniego emeryta, uszkodzili mu samochód i nie chcą udostępnić nagrań? Idole na miarę wykopków, do bingo jeszcze tylko brakowało kaudytora ( ͡° ͜ʖ ͡°)

uncle_freddie +147
Treść przeznaczona dla osób powyżej 18 roku życia...


![[ROZDAJO] Ratujemy kotki z piwnicy! Rozdajemy klucze do naszej gry KittyRush](https://wykop.pl/cdn/c3397993/0b35b2fddaf5aba4c3c6b30378a4e9575e6aa329626a8edc64a3dd1f4cdb97e2,q80.png)


def firstDuplicate(A):
....for x in A:
........A[abs(x) - 1] *= -1
........if A[abs(x) - 1] > 0:
............return abs(x)
....return -1
a abstrahując od większości logiki, albo ja czegoś nie rozumiem, albo pierwszy rozkaz w pętli próbuje indeksować listę A po wartości absolutnej jednego z elementów a nie po indeksie listy, oczywiście pomniejszonej o 1 ale to nic nie zmienia.
źródło: comment_s2xTeU4NiXIwEbo6vmhPxSGa2rSPUW34.jpg
Pobierzhttps://medium.com/@joshsaintjacque/algorithms-exercise-find-the-first-duplicate-in-an-array-e97e9ed282c1
W tym przypadku działa to dobrze - jeśli po pomnożeniu przez -1 liczba jest dodatnia, to znaczy że już wcześniej była pomnożona przez -1, czyli jest duplikatem(o najmniejszym indeksie w tabeli). Pewnie nie doczytałeś dokładnie warunków zadania.