#programowanie Przygotowuję się testu codility i rozwiązuje ichnie zadanka. Jednak typu bug-fixing nie moge rozgryźć. Nie można nic usuwać, nic dopisywać, zmieniać można jedynie 3 liniie. Nie czaje tego.
Tu otwarty przykład. Ktoś pomoże, nakieruje... hę?
@FedoraTyrone: Można jeszcze tak: a) 10 linijka: (n / 2) + 1 zamiast (n + 1) / 2 b) 16 linijka: count >= pos zamiast count > pos Wiem że dwie zmiany, ale wówczas pos określa liczbę wymaganych elementów dla lidera i jest łatwiejsze do zrozumienia.
Tu otwarty przykład. Ktoś pomoże, nakieruje... hę?
https://codility.com/demo/take-sample-test/bf-leader/
Komentarz usunięty przez autora
Bez patrzenia na zadanie wziąłem z -1 na 1 przy linijce 6. I przeszło hahahah. Kod ustawiłem na Javę.
Komentarz usunięty przez autora
a) 10 linijka:
(n / 2) + 1zamiast(n + 1) / 2b) 16 linijka:
count >= poszamiastcount > posWiem że dwie zmiany, ale wówczas
posokreśla liczbę wymaganych elementów dla lidera i jest łatwiejsze do zrozumienia.ciekawostka, rozwiązanie całego zadania na 129 bajtach w #python
solution=lambda A:-1 if set([x for x in A if A.count(x)>len(A)/2]) == set() else set([x for x in A if A.count(x)>len(A)/2]).pop()solution=lambda A:[globals().__setitem__('y',set([x for x in A if A.count(x)>len(A)/2])),-1 if y==set() else y.pop()][1]val solution=A.groupBy(identity).find(_._2.size>A.size/2).getOrElse((-1,-1))._1przykład z pythona to pełnoprawna funkcja którą można normalnie wołać z argumentami
def solution(A:Seq[Int])=A.groupBy(identity).find(_._2.size>A.size/2).getOrElse((-1,-1))._1Komentarz usunięty przez autora
solution←{(⍪∪⍵),+/(∪⍵)∘.⍷⍵}