2917 - Catalan

From Bitnami MediaWiki

Date de intrare

Programul citește de la tastatură numărul n.

Date de ieșire

Programul va afișa pe ecran al n-lea număr Catalan. În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse." iar daca se indeplinesc se afiseaza "Datele de intrare corespund restricțiilor impuse."

Restricţii şi precizări

  • 0 ⩽ n ⩽ 1000

Exemplul 1

Intrare
5
Ieșire
Datele de intrare corespund restricțiilor impuse
42


Exemplul 2

Intrare
-2
Ieșire
Datele de intrare nu corespund restricțiilor impuse.


Rezolvare

<syntaxhighlight lang="python" line> import math

def calculeaza_numar_catalan(n):

   return math.factorial(2 * n) // (math.factorial(n + 1) * math.factorial(n))

if __name__ == "__main__":

   try:
       n = int(input())
       if 0 <= n <= 1000:
           rezultat = calculeaza_numar_catalan(n)
           print("Datele de intrare corespund restrictiilor impuse.")
           print(rezultat)
       else:
           print("Datele de intrare nu corespund restrictiilor impuse.")
   except ValueError:
       print("Datele de intrare nu corespund restrictiilor impuse.")


</syntaxhighlight>