Witam mam problem z akceptacja("Błędna odpowiedź") zadania na SPOJ-u polegającego na podaniu n-tego wiersza trójkąta i wypisaniu go.
link do zadania: https://pl.spoj.com/problems/TROJPASC/
Mój kod do zadania to:
def factorial(n):
if n < 2 :
return 1
else:
return n * factorial(n - 1)
def pascals_triangle(n):
tab = []
if n < 0 or n > 100:
return None
if n < 1:
tab.append(1)
else:
for i in range(n + 1):
if i == 0 or i == n:
tab.append(1)
else:
a = int(factorial(n)/(factorial(i) * factorial(n - i)))
tab.append(a)
for k in range(len(tab)):
print(tab[k], end= " ")
print()
t = int(input())
for i in range(t):
n = int(input())
pascals_triangle(n)
Jak widać poszczególne liczby trójkąta("a") licze poprzez kombinacje tj. n!/k! * (n-k)!,
Proszę o jakies sugestie :)