|
|
(30 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| == 2938 - Albina ==
| |
|
| |
|
| == Cerința ==
| |
|
| |
| Î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 ⩽ '''zile''' ⩽ 1000000
| |
|
| |
| == Exemplu 1 ==
| |
|
| |
| ; Intrare
| |
| : 4
| |
| ; Ieșire
| |
| : Datele de intrare corespund restricțiilor impuse
| |
| : 37
| |
| <br>
| |
|
| |
| == Exemplu 2 ==
| |
|
| |
| ; Intrare
| |
| : 0
| |
| ; Ieșire
| |
| : Nu au fost respectate cerintele impuse
| |
| <br>
| |
|
| |
| == Rezolvare ==
| |
|
| |
| <syntaxhighlight lang="python" line>
| |
| # 2938 - Albina
| |
| def numar_celule_nectar(n):
| |
| # Verificare dacă datele de intrare respectă restricțiile
| |
| if 1 <= n <= 1000000:
| |
| # Calculul numărului total de celule după n zile
| |
| Celule = 1 + 6 * (n * (n + 1) // 2)
| |
| return Celule
| |
| else:
| |
| return None
| |
|
| |
| # Citirea numărului de zile de la tastatură
| |
| n = int(input("Introduceți numărul de zile (1 <= zile <= 1000000): "))
| |
|
| |
| # Calculul și afișarea rezultatului
| |
| rezultat = numar_celule_nectar(n)
| |
| if rezultat is not None:
| |
| print(rezultat)
| |
| else:
| |
| print("Nu au fost respectate cerințele impuse.")
| |
| </syntaxhighlight>
| |