• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Zadania z Codility

Object Storage Arubacloud
0 głosów
6,251 wizyt
pytanie zadane 2 września 2017 w Java przez Jonki Dyskutant (8,180 p.)
Zacząłem robić zadanka z Codility. Doszedłem do 4 lekcji i zaczęły się problemy z samym rozumieniem zadań.

Zadania

https://codility.com/programmers/lessons/4-counting_elements/frog_river_one/

i

https://codility.com/programmers/lessons/4-counting_elements/max_counters/.

 

Mogły ktoś wytłumaczyć mi na czym polegają te zadania i o co w nich chodzi. Nie chcę kodu, tylko zrozumieć o co kama z tą żabką z pierwszego zadania i o co w ogóle chodzi w tym drugim.

 

Zadanie 1: Celem jest odnalezienie najwcześniejszego czasu, w którym żaba może przeskoczyć na drugą stronę rzeki. Żaba może krzyżować się tylko wtedy, gdy liście pojawiają się w każdym miejscu w poprzek rzeki od 1 do X (tzn. chcemy znaleźć najwcześniejszy moment, kiedy wszystkie pozycje od 1 do X są pokryte liśćmi). Można przypuszczać, że prędkość prądu w rzece jest nieistotnie mała, tzn. Liście nie zmieniają pozycji po opadnięciu w rzece.

W drugim 6 liść spada do pozycji 5. Jest to najwcześniejszy moment, kiedy liście pojawiają się w każdej pozycji nad rzeką.

 

Zadanie 2 to jakaś magia.

1 odpowiedź

0 głosów
odpowiedź 3 września 2017 przez Tomasz90 Nałogowiec (25,140 p.)
edycja 3 września 2017 przez Tomasz90
Nie tłumaczyłem słowo w słowo, ale ogólnie w tych zadaniach chodzi o:

Zadanie 1) Musisz znaleźć czas w którym, żabka będzie mogła najszybciej przeskoczyć na drugą stronę rzeki po liściach. Tablica A zawiera pozycje na którą spada liść, a jej indeksy są kolejnymi sekundami. X to liczba pozycji. Na przedstawionym przykładzie widać, że w 6 sekundzie jest to możliwe (pozycje 1, 2, 3 ,4 ,5 są zajęte). Metoda powinna zwrócić  tą wartość jako int, a w przypadku gdy po przejściu po całej tablicy każda z pozycji nie jest wypełniona wtedy metoda powinna zwrócić -1

Zadanie 2) Masz N liczników. Początkowo każdy z nich jest ustawiony na 0. Dozwolone są 2 operacje:

-increase(X) - wartośc licznika X zostaje zwiększona o 1

-max counter - wszystkie liczniki ustawiane są na wartość maksymalną jednego z nich

Tablica A reprezentuje kolejne operacje. na licznikach:

- jeżeli A[K] = X, dla takiego X, że 1 <= X <= N wtedy wykonywana jest operacja increase(X)

- jeżeli A[K] = N+1, wtedy wykonywana jest operacja max counter

Potem jest przykład w którym widać, że kolejno zwiększony zostaje licznik nr 3 (A[0] = 3), gdyż dla X = 3 spełniony jest warunek 1 <= X <= N, gdzie N = 5. Następnie wg tego samego schematu zostaje zwiększony dwukrotnie licznik nr 4. Dla operacji A[3] następuje ustawienie wszystkich liczników na wartość maksymalną jednego z nich (w tym wypadku wynosi ona 2), ponieważ wartość A[3] spełnia warunek A[K] = N + 1 ( 6 = 5 + 1). Ogólnie metoda którą masz napisać powinna Ci zwrócić wartości wszystkich liczników w postaci int[] po wykonaniu wszystkich operacji

Podobne pytania

0 głosów
1 odpowiedź 617 wizyt
pytanie zadane 16 stycznia 2019 w Java przez krawiecki Początkujący (490 p.)
0 głosów
1 odpowiedź 958 wizyt
pytanie zadane 27 kwietnia 2018 w Offtop przez nik Obywatel (1,640 p.)
0 głosów
1 odpowiedź 330 wizyt
pytanie zadane 10 listopada 2016 w Java przez LightInWindow Użytkownik (720 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...