Fitoplankton
#programowanie #cpp
Halp mirki. Problem raczej matematyczny, ale program jest istotny. #matura here, takie zadanko:

Niech n będzie dodatnią liczbą całkowitą i niech a 1 , a 2 , ..., a n będzie ciągiem nieujemnych
liczb całkowitych. Dla pary liczb i, j takich, że 1 ≤ ≤ ≤ , blokiem b(i,j) nazywamy
podciąg kolejnych elementów ciągu a z pozycji od i do j, czyli a i , a i+1 , ..., a j . Długością
bloku nazywamy liczbę jego elementów. O bloku, którego suma elementów jest podzielna
przez 3 mówimy, że jest blokiem trójkowym.
Przykład:
W ciągu 0,0,2,3,2,1,2 najdłuższym blokiem trójkowym jest b(4,6) = 3,2,1.
W plikach tekstowych bloki1.txt, bloki2.txt i bloki3.txt zapisano ciągi
odpowiednio 1000, 30000 i 1000000 nieujemnych liczb całkowitych mniejszych od 10 000.
W każdym pliku liczby zapisano w kolejnych wierszach, po jednej liczbie w każdym wierszu.
Dla każdego pliku z danymi wyznacz długość najdłuższego bloku trójkowego w ciągu
zapisanym w tym pliku.

bla bla. Napisałem taki program:
https://gist.github.com/ebc3784070df275fb772
Program przelicza to prawidłowo, z ładną złożonością n. Myli się jedynie o tę jednynkę w 29 linii (mam odpowiedzi, raczej prawidłowe). I teraz pytanie

dlaczego ta jedynka jest zła?

  • Najlepsze
  • Wszystkie komentarze
wytrzzeszcz
@kuhar: @kuhar: oddaje honory
sylwke3100
@Fitoplankton: Dla ciągów gdzie masz nie podaną z góry ilość danych polecam używać wektorów nie zwykłych tablic.
wytrzzeszcz
wytrzzeszcz
  • adult
2
Treść przeznaczona dla osób powyżej 18 roku życia...
k.....r
k.....r
wytrzzeszcz
@Fitoplankton: Błąd liczenia o jeden (tak wiem oczywiste) ale widać ktoś testy źle napisał może ...
k.....r
k.....r
@Fitoplankton: odpowiedź trochę nie na temat, ale:
- plik.close(); jest zbędne - pliki zamykają się same kiedy kończy się życie zmiennej; nie mam pojęcia skąd się ten idiotyzm bierze w dużej liczbie kursów cpp
- na maturze nie trzeba w ogóle obsługiwać plików - można tylko przekierować sobie strumienie
- indeksowanie od 1 jest dziwne i na dłuższą metę na pewno przysporzy sporo problemów, szczególnie kiedy mieszamy je ze standardowym numerowaniem od 0
-
Fitoplankton
Fitoplankton Autor
0
@wytrzzeszcz: ta sytuacja powtarza się dla trzech plików. Choć z drugiej strony - to jest oficjalny informator cke. Sam nie wiem