Aktywne Wpisy
ejj +639
Co trzeba mieć we łbie żeby dać przycisk "Wyczyść" zaraz obok formularza, a "Wyszukaj" gdzieś tam na dole?
#kiciochpyta #programowanie
#kiciochpyta #programowanie
bArrek +597
Mam taką paczkę trzech kumpli z którymi znamy się ponad dwadzieścia lat to długa znajomość większość wykopków nawet tylu lat nie ma. Pierwszy z nich ma żonę i dziecko w drodze, drugi z nich ma narzeczoną i dziecko, trzeci ma narzeczoną każdy mieszka w swoim mieszkaniu a ja większość czasu spędzam na roboczej kwaterze i walę konia do takich #!$%@? rzeczy że jak skończę to Bóg z dwa kotki zabija
Mianowicie zadanie poelga na tym, że by znaleźć unikalną wartość w liscie
No i testy mi przechodzi prawidłowo, ale jak dam Attempt to jest błąd "Execution Timed Out", czyli coś jakby nieskoczona pętla czy coś, a to niemożliwe chyba. Mój kod:
def find_uniq(arr):
for n in arr:
if arr.count(n) == 1:
return n # n: unique integer in the array
return None
#programowanie #naukaprogramowania
Tak to wygląda teraz i przeszło od razu: https://pastebin.com/rn6MsZGb
Jak można by to ogarnąć jeszcze szybciej?
Poza tym wczytaj się w kod, on iteruje po unikalnych wartościach z seta, i woła count na oryginalnej niezmienionej liście. Ot całe przyśpieszenie względem oryginalnej metody
@Lunatik: @bm9pY2h1ag: otóż to
Komentarz usunięty przez autora
def find_uniq(arr):
....oberved = dict()
....unique = dict()
....for element in arr:
........if element not in oberved:
............unique[element] = None
........else:
............unique.pop(element, None)
........oberved[element] = None
....for element in unique:
........return element
....return None
Komentarz usunięty przez autora
@zarev: Tak wiem, nie doczytałem, zauważyłem już po dodaniu mojego komentarza. Ale po przeczytaniu widzę u ciebie błędy. Pierwszy taki, że zwracasz None gdy w sekwencji jest więcej niż jeden unikalny element. A drugi, że set nie trzyma kolejności, więc gdy unikalnych będzie więcej niż jeden element, to nie ma gwarancji zwrócenia
Komentarz usunięty przez autora
XOR
na wszystkich elementach listy i zwrócić wynik (zakładając, że wszystkie liczby są rożne od zera).Komentarz usunięty przez autora