Pagini recente » Diferente pentru utilizator/marius7122 intre reviziile 9 si 10 | Istoria paginii problema/albume | Diferente pentru utilizator/c0mrade intre reviziile 3 si 4 | Atasamentele paginii Profil Monica95 | Diferente pentru problema/ccount intre reviziile 14 si 17
Nu exista diferente intre titluri.
Diferente intre continut:
Procedura de calcul pentru un anumit termen al sirului, fie el $A(n)$ este urmatoarea:
==code(c)| intreg F(intreg n) {
daca A(n) este cunoscut atunci intoarce valoarea A(n); // retineti ca in momentul in care functia intoarce o valoare apelul functiei este finalizat.
daca A(n) este cunoscut atunci intoarce valoarea A(n);
calcule_totale++;
intoarce valoarea F(n - 1) + F(n - 2);
}
* $1 ≤ N ≤ 10^5^$
* $A$ *mod* $B$ se refera la restul impartirii numarului $A$ la numarul $B$.
* Dupa apelarea functiei $F(n)$, valoarea $A(n)$ *nu* devine cunoscuta in continuare. Astfel, $F(n)$ va fi apelata de oricate ori este nevoie pentru o anumita valoare a lui $n$.
* Urmatoarele relatii sunt valabile si pot fi necesare pentru a calcula rezultatul fara a depasi tipurile de date C++:
* (A + B) mod C = (A mod C + B mod C) mod C
* (A * B) mod C = ((A mod C) * (B mod C)) mod C
table(example). |_. ccount.in |_. ccount.out |
| 6 1
5
| This is another
text written on
multiple lines.
|3
|
h3. Explicaţie
Variabila $calcule_totale$ este incrementata in apelurile $F(6)$, $F(4)$, $F(3)$.
Observati ca daca $A(5)$ nu ar fi fost cunoscut, raspunsul ar fi fost 7.
== include(page="template/taskfooter" task_id="ccount") ==
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.