Pbinfo „Albina” – numarul 2938

Cerinta
Într-un stup, pe un fagure de miere infinit, trăiește o albină foarte harnică. Fagurele este alcătuit din celule hexagonale, fiecare celulă având șase vecini. În prima zi albina depune nectar într-o singură celulă. În fiecare din zilele următoarele, albina depune nectar în celulele vecine cu cele în care a fost deja depus nectar.
Aflați în câte celule este depus nectar după n
zile.
Date de intrare
Programul citește de la tastatură numărul n
.
Date de ieșire
Programul va afișa pe ecran numărul C
, reprezentând numărul de celule în care este depus nectar după n
zile.
Restricții și precizări
1 ≤ n ≤ 1.000.000
Rezolvarea este destul de simpla si se bazeaza doar pe STRUCTURA LINIARA.
Fac o analiza matematica corecta a problemei:
– in prima zi se depune nectar in 1 celula;
– a doua zi se depune nectar in 6 = 6 * 1 celule;
– a treia zi se depune nectar in 12 = 6 * 2 celule;
– a patra zi se depune nectar in 18 = 6 * 3 celule;
si asa mai departe
– a n zi se depune nectar in 6*(n-1) celule;
In total, numarul de celule pline cu miere vor fi:
total = 1 + 6 * 1 + 6 * 2+ 6 * 3+ … + 6 * (n-1)
Dau factor comun pe 6 si obtin
total = 1 + 6 * (1 + 2+ 3+ … + (n-1)) = 1 + 6 * (n-1) * (n-1+1)/2 = 1 + 3 * (n-1) * n;
Am obtinut deci suma primelor n-1 numere naturale pe care am putut-o calcula rapid cu formula lui Gauss. Am nevoie de inca o simplificare cu 2 si ajung la rezultatul final in care am calculat numarul total de celule pline cu miere in functie doar de numarul de zile citit initial.
Dupa ce am incheiat analiza matematica a problemei, pot trece la etapa de implementare in pseudocod a problemei:
ALGORITM albina ESTE:
CITESTE n;
total = 1 + 3 * (n-1) * n;
TIPARESTE total;
SFARSIT_ALGORITM.
Cred ca atat este destul ca sa poti implementa problema si sa o trimiti pe site!
Succes!