Skocz do zawartości

Najdłuższy ciąg tych samych liczb występujących po sobie w tablicy


Recommended Posts

Witam,

 

Mam napisać kod, który zwróci długość najdłuższego ciągu tych samych liczb występujących po sobie w tablicy. Np.: dla tablicy [1, 2, 2, 3, 3, 3, 4, 4, 4, 4] zwróci wartość 4, ponieważ 4, 4, 4, 4 to najdłuższy ciąg tych samych liczb występujących po sobie. Mój pseudokod wygląda tak:

 

    A[n]
    max <- 1
    for i <- 0 to n do 
        i <- i + 1
            if A = A[i + 1] then max <- max + 1
    pisz (max)
 
Problem polega na tym, że dla tablicy z przykładu poda on wartość 7, zamiast 4. Będę wdzięczny za pomoc
Link to post
Share on other sites

Nie resetujesz wartości zmiennej max na 1 po zmianie liczby występującej w ciągu.

 

Łopatologicznie:

A[n]
    max <- 1
    max_tmp<-1
    for i <- 0 to n do 
        i <- i + 1
            if A = A[i + 1] then max_tmp <- max_tmp + 1
            else 
               max_tmp<-1
            if (max_tmp>max)
                  max<-max_tmp
    pisz (max)
 
Można to zoptymalizować znacznie, ale nie wiem czy to istotne. (Mogłem się walnąć w pseudokodzie, ale jest szansa że nie)
Link to post
Share on other sites

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Odpowiedz w tym wątku...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...