CloudCoder Python feladatgyujtemeny/nalattak

A MathWikiből
A lap korábbi változatát látod, amilyen Csirke (vitalap | szerkesztései) 2015. szeptember 11., 04:56-kor történt szerkesztése után volt.
(eltér) ←Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)

Ezt a feladatot többféleképpen meg lehetett oldani, pl. a faktoriálisok kiszámításával. Számomra a legegyszerűbb megoldás a pascal megoldásának felhasználása volt:

def nalattak(n, k):
    haromszog = [[0 for j in range(i+1)] for i in range(n+1)]
    haromszog[0][0] = 1
    for i in range(1, n+1):
        for j in range(i+1):
            if j == 0 or j == i:
                haromszog[i][j] = 1
            else:
                haromszog[i][j] = haromszog[i-1][j] + haromszog[i-1][j-1]
    return haromszog[n][k]
Személyes eszközök