szamhuzas.py
1    #   H lottó (H számból N db számot húzunk)
2    #   összes lehetséges húzás megkeresése
3    H = int(input('Hány számból húzhatunk? '))
4    N = int(input('És hány darab számot? '))
5    x = [0] * N
6    
7    
8    def jó_eset(i):
9        s = True
10       for j in range(i):
11           if x[j] >= x[j + 1]:
12               s = False
13       return s
14   
15   
16   def backtrack(i):
17       global megoldas
18   
19       for j in range(1, H + 1):
20           x[i] = j
21           if jó_eset(i):
22               if i < N - 1:  # indexelés miatt -1
23                   backtrack(i + 1)
24               else:
25                   megoldas += 1
26                   for k in range(0, N):
27                       print(x[k], end=' ')
28                   print()
29   
30   
31   megoldas = 0
32   backtrack(0)  # 0-val indítom indexelés miatt
33   print('Megoldások száma: ', megoldas)