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

Projekt Euler Zadanie 2

Aruba Cloud PRO i VPS, Openstack, VMWare, MS Hyper-V
0 głosów
411 wizyt
pytanie zadane 12 lutego 2017 w Java przez Szymon Ciamaga Obywatel (1,980 p.)
edycja 12 lutego 2017 przez Szymon Ciamaga

Witam, robię zadanie z Project Euler https://projecteuler.net/problem=2. Moje rozwiązanie wygląda tak ale odpowiedź dalej jest nieprawidłowa co robię nie tak ?

 

public class Main {
    public static final int MAX_NUMBERS = 4000000;

    public static void main(String[] args) {
        long[] fibo = new long[MAX_NUMBERS];

        int i = 2;
        long sum = 0;
        long next = 0;
        fibo[0] = 1;
        fibo[1] = 2;

        while (i < fibo.length) {
            next = fibo[i - 1] + fibo[i - 2];
            fibo[i] = next;
            if (fibo[i-2] % 2 == 0) {
                sum += fibo[i];
            }
            i++;
        }
        System.out.println(sum);
    }
}

 

2 odpowiedzi

+2 głosów
odpowiedź 12 lutego 2017 przez niezalogowany
wybrane 12 lutego 2017 przez Szymon Ciamaga
 
Najlepsza
Chodzi o to by znaleźć sumę tych wyrazów, które są mniejsze od 4000000 i parzyste. Będzie ich mało więc suma powinna się zmieścić nawet w incie.
0 głosów
odpowiedź 12 lutego 2017 przez Porcupine Nałogowiec (31,600 p.)

Na pewno nie ma potrzeby żebyś trzymał te liczby w tablicy. Zamiast tego wystarczy, że będzie pamiętać w danym momencie wartość dwóch ostatnich wyników i na ich podstawie obliczać kolejny.

Co to przekroczenia maksymalnej wartości long'a - jest to bardzo prawdopodobne. W Javie możesz użyć specjalnej klasy BigInteger (https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html) żeby rozwiązać ten problem.

komentarz 12 lutego 2017 przez niezalogowany
Jaka wychodzi Ci suma?
komentarz 12 lutego 2017 przez Szymon Ciamaga Obywatel (1,980 p.)
przeszło! dziekuję! ;) odpowiedź: 4613732
komentarz 12 lutego 2017 przez niezalogowany
UFF to dobrze. Najgorsze w tym zadaniu chyba było to rozszyfrowanie co dokładnie autorzy zadania chcą :)
1
komentarz 12 lutego 2017 przez niezalogowany
Ejjjj ale ja jestem Hipcio! Ten z odpowiedzią trochę niżej :D
komentarz 12 lutego 2017 przez Szymon Ciamaga Obywatel (1,980 p.)
no właśnie zauważyłem że wszystkie zadania takie są.

Podobne pytania

0 głosów
1 odpowiedź 121 wizyt
pytanie zadane 20 września 2019 w C i C++ przez kawapa Nowicjusz (210 p.)
0 głosów
1 odpowiedź 96 wizyt
pytanie zadane 14 czerwca 2018 w C i C++ przez Zaratustra Początkujący (320 p.)
0 głosów
1 odpowiedź 190 wizyt
pytanie zadane 12 lutego 2021 w Java przez Aleksandra6 Nowicjusz (140 p.)

89,727 zapytań

138,332 odpowiedzi

309,340 komentarzy

59,649 pasjonatów

Advent of Code 2022

Top 15 użytkowników

  1. 429p. - Argeento
  2. 427p. - nidomika
  3. 396p. - Mikbac
  4. 392p. - ssynowiec
  5. 390p. - Łukasz Eckert
  6. 387p. - TheLukaszNs
  7. 386p. - rucin93
  8. 382p. - Michal Drewniak
  9. 382p. - Marcin Harasimowicz
  10. 378p. - JMazurkiewicz
  11. 373p. - tokox
  12. 367p. - Jarosław Roszyk
  13. 362p. - adrian17
  14. 359p. - overcq
  15. 350p. - Mawrok
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

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

Sklep oferujący ćwiczenia JavaScript, PHP, rozmowy rekrutacyjne dla programistów i inne materiały

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...