
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def komb(n,k,L):\n    if k==0: return []\n    if k==1: return [[x] for x in L]\n    if k==n: return [L]\n    R = komb(n-1,k,L[1:])\n    Q = komb(n-1,k-1,L[1:])\n    Q = [[L[0]]+s for s in Q]\n    return R+Q\ndef podmnoziny(n, k):\n 
def komb(n,k,L):\n    if k==0: return []\n    if k==1: return [[x] for x in L]\n    if k==n: return [L]\n    R = komb(n-1,k,L[1:])\n    Q = komb(n-1,k-1,L[1:])\n    Q = [[L[0]]+s for s in Q]\n    return R+Q\ndef podmnoziny(n, k):\n 
def podmnoziny(n, k):\nL = range(1,k+1)\nwhile L!=range(n-k+1,n+1):\nfor i in L:\nprint i,\nprint\nj=k-1\nwhile L[j]==(n-k+j+1):\nj-=1\nL[j]+=1\nwhile j<len(L)-1:\nj+=1\nL[j]=L[j-1]+1\nfor i 
def podmnoziny(n, k=0):\nL = range(1,k+1)\nwhile L!=range(n-k+1,n+1):\nfor i in L:\nprint i,\nprint\nj=k-1\nwhile L[j]==(n-k+j+1):\nj-=1\nL[j]+=1\nwhile j<len(L)-1:\nj+=1\nL[j]=L[j-1]+1\nfor 
def podmnoziny(n, k):\n    for i in range(1,n-1):\n        for j in range(i+1, n):\n            for k in range(j+1, n+1):\n        print i,j,k\n\n\n 
def podmnoziny(n, k):\n    hodnoty = []\n    for i in range(0,k):\n        hodnoty.append([])\n        for j in range(i+1,n-k+i+2):\n            hodnoty[i].append(j)\n    \n    res = [[i] for i in hodnoty [0]]\n    for i in range(1, 
def podmnoziny(n, k):\n    hodnoty = []\n    for i in range(0,k):\n        hodnoty.append([])\n        for j in range(i+1,n-k+i+2):\n            hodnoty[i].append(j)\n    \n    res = [[i] for i in hodnoty [0]]\n    for i in range(1, 
def podmnoziny(n, k):\n    hodnoty = []\n    for i in range(0,k):\n        hodnoty.append([])\n        for j in range(i+1,n-k+i+2):\n            hodnoty[i].append(j)\n    \n    res = [[i] for i in hodnoty [0]]\n    for i in range(1, 
def podmnoziny(n, k=0):\n    if k == 0:return\n    hodnoty = []\n    for i in range(0,k):\n        hodnoty.append([])\n        for j in range(i+1,n-k+i+2):\n            hodnoty[i].append(j)\n    \n    res = [[i] for i in hodnoty [0] 
def perms(stack):\n     
def comb(sofar, rest, n, k):\n    if n == 0:\n        print sofar\n    if n == k:\n        for i in range(len(rest)):\n            comb(rest[i], rest[i+1:], n-1)\n    else:\n        for i in range(len(rest)):\n            comb(sofar + 
\ndef mn(lst, k, i, res):\n    print(lst)\n    if k==0:\n        print .join(res)\n    if i==len(lst):\n        return\n    mn(lst, k-1, i+1, res + [lst[i]])\n    mn(lst, k, i+1, res)\n\ndef podmnoziny(n, k):\n    mn(list(rang 
\ndef mn(l, k, i, res):\n    if k==0:\n        print .join([str(r) for r in res])\n    if i==len(l):\n        return\n    mn(l, k-1, i+1, res[::1] + [l[i]])\n    mn(l, k, i+1, res[::1])\n\ndef podmnoziny(n, k):\n    res = []\n 
def podmnoziny(n, k):\n     
def podmnoziny(n, k):\n     
def solve(N, n, k, p):\n    if(k == 0):\n        for i in p: print i,\n        print\n        return -1\n    if(n > N): return -1\n    else:\n        solve(N, n+1, k-1, p + [n])\n        solve(N, n+1, k, p)\n\ndef podmnoziny(n, k) 
def solve(N, n, k, p):\n    if(k == 0):\n        for i in p: print i,\n        print\n        return -1\n    if(n > N): return -1\n    else:\n        solve(N, n+1, k-1, p + [n])\n        solve(N, n+1, k, p)\n\ndef podmnoziny(n, k) 
def solve(N, n, k, p):\n    if(k == 0):\n        for i in p: print i,\n        print\n        return -1\n    if(n > N): return -1\n    else:\n        solve(N, n+1, k-1, p + [n])\n        solve(N, n+1, k, p)\n\ndef podmnoziny(n, k) 
def solve(N, n, k, p):\n    if(k == 0):\n        for i in p: print i,\n        print\n    elif(n <= N):\n        solve(N, n+1, k-1, p + [n])\n        solve(N, n+1, k, p)\n\ndef podmnoziny(n, k):\n    solve(n, 1, k, [])\n 
def solve(N, n, k, p):\n    if(k == 0):\n        for i in p: print i,\n        print\n    elif(n <= N):\n        solve(N, n+1, k-1, p + [n])\n        solve(N, n+1, k, p)\n\ndef podmnoziny(n, k=0):\n    solve(n, 1, k, [])\n 
def pod(n,k,start,text,max):\n    if start+k>n+1:\n        return\n    if k==0:\n        for i in range(max):\n          print text[i],\n        print\n        return\n    for i in range(start,n-k+2):\n        pod(n,k-1,i+1,text% 
def pod(n,k,start,text,max):\n    if start+k>n+1:\n        return\n    if k==0:\n        for i in range(max):\n          print text[i],\n        print\n        return\n    for i in range(start,n-k+2):\n        pod(n,k-1,i+1,text% 
def pod(n,k,start,text,max):\n    if start+k>n+1:\n        return\n    if k==0:\n        for i in range(max):\n          print text[i],\n        print\n        return\n    for i in range(start,n-k+2):\n        pod(n,k-1,i+1,text% 
def printList(l):\n    for i in l:\n        print i,\n    print\n    \ndef podmnoziny(n, k):\n    ind = list(range(1,k+1))\n    done = False\n    while not done:\n        printList(ind)\n        i = k-1\n        while (i >= 0) and (i 
def printList(l):\n    for i in l:\n        print i,\n    print\n    \ndef podmnoziny(n, k):\n    ind = list(range(1,k+1))\n    done = False\n    while not done:\n        printList(ind)\n        i = k-1\n        while (i >= 0) and (i 
def printList(l):\n    for i in l:\n        print i,\n    print\n    \ndef podmnoziny(n=1, k=0):\n    if (not n) or (not k) or (n < k):\n        return\n    ind = list(range(1,k+1))\n    done = False\n    while not done:\n        pri 
def podm(z,n,k):\n    if k == 1:\n        return [[i] for i in range(z,n+1)]\n    if n - z + 1 == k: return [range(z,n+1)]\n    ret2 = podm(z+1, n,k)\n    ret = []\n    for p in podm(z+1,n,k-1):\n        ret.append([z] + p)\n 
def podm(z,n,k):\n    if k == 1:\n        return [[i] for i in range(z,n+1)]\n    if n - z + 1 == k: return [range(z,n+1)]\n    ret2 = podm(z+1, n,k)\n    ret = []\n    for p in podm(z+1,n,k-1):\n        ret.append([z] + p)\n 
def podmnoziny(n, k):\nt=range(1, n+1)\nl=[]\nfor i in t:\nl.append([i])\nrek(n, k, l)\n\ndef rek(n, k, l):\nll=[]\nfor i in l:\nfor j in range(i[-1]+1, n+1):\nll.append(i + [j])\n\nif len(ll[0]) < k: rek(n, 
def podmnoziny(n, k):\nt=range(1, n+1)\nl=[]\nfor i in t:\nl.append([i])\nif k>1: rek(n, k, l)\nelif k==0: pass\nelse: pr(l)\ndef rek(n, k, l):\nll=[]\nfor i in l:\nfor j in range(i[-1]+1, n+1):\nll.append(i + 
def podmnoziny(n, k):\nt=range(1, n+1)\nl=[]\nfor i in t:\nl.append([i])\nif k>1: rek(n, k, l)\nelif k==1: pr(l)\nelse: pass\ndef rek(n, k, l):\nll=[]\nfor i in l:\nfor j in range(i[-1]+1, n+1):\nll.append(i + 
def podmnoziny(n, k=0):\n    vysledek=podm(k,range(1,n+1))\n    for i in vysledek: \n        for j in i: print j,\n        print\n    \ndef podm(k,seznam):\n    vystup=[]\n    if k==1: \n        for i in seznam: vystup=vystup+[[i]]\ 
def podmnoziny(n, k=0):\n    if k==0: return 0\n    vysledek=podm(k,range(1,n+1))\n    for i in vysledek: \n        for j in i: print j,\n        print\n    \ndef podm(k,seznam):\n    vystup=[]\n    if k==1: \n        for i in seznam: 
def podmnoziny(n,k):\n    a=[]\n    for i in range(n):\n        a.append(i+1)\n    b=0\n    for i in range(2**n):\n        c=i\n        d=0\n        while c!=0 or b>k:\n            d*=10\n            if c%2==1:\n                d+= 
def f(n):\n    f = 1\n    while n>1:\n        f = f*n\n        n -= 1\n    return f\n\ndef podmnoziny(n, k):\n    L = [i for i in range(1, k+1)]\n    for i in range( f(n)/(f(k)*f(n-k)) ):\n        for j in range(k):\n            prin 
def f(n):\n    f = 1\n    while n>1:\n        f = f*n\n        n -= 1\n    return f\n\ndef podmnoziny(n, k):\n    L = [i for i in range(1, k+1)]\n    for i in range( f(n)/(f(k)*f(n-k)) ):\n        for j in range(k):\n            prin 
def f(n):\n    f = 1\n    while n>1:\n        f = f*n\n        n -= 1\n    return f\n\ndef podmnoziny(n, k):\n    if k>0:\n        L = [i for i in range(1, k+1)]\n        for i in range( f(n)/(f(k)*f(n-k)) ):\n            for j in ra 
def f(n):\n    f = 1\n    while n>1:\n        f = f*n\n        n -= 1\n    return f\n\ndef podmnoziny(n, k):\n    if k>0:\n        L = [i for i in range(1, k+1)]\n        for i in range( f(n)/(f(k)*f(n-k)) ):\n            for j in ra 
        \ndef podmnoziny(n, k):\n    a = [i+1 for i in range(k)]    \n    while True:\n        for i in a:\n            print i,\n        print\n        for i in range(len(a)-1,-1,-1):\n            if a[i] < n:\n                a[i] %2 
def podmnoziny(n, k):\n    def pr(p, i0, n, k):\n        if k == 0:\n            print " ".join(str(w) for w in p)\n            return\n        for i in range(i0, n):\n            pr(p + [i+1], i+1, n, k-1)\n            \n    pr([], 
def podmnoziny(n, k):\n    d = list(genp(k, range(1, n+1)))\n    for p in d:\n        print .join(str(c) for c in p)\n\ndef genp(n, s):\n    if n == 0:\n        yield []\n        return\n    for c in s:\n        for p in genp(n-1, 
def podmnoziny(n, k=0):\n    d = list(genp(k, range(1, n+1)))\n    for p in d:\n        print .join(str(c) for c in p)\n\ndef genp(n, s):\n    if n == 0:\n        yield []\n        return\n    for c in s:\n        for p in genp(n-1 
def pm(s, b, e, k):\n    if k == 0:\n        for x in s:\n            print x,\n        print\n    else:\n        for x in range(b, e+1):\n            pm(s + [x], x+1, e, k-1)\n\ndef podmnoziny(n, k):\n    pm([], 1, n, k)\n 
def pm(s, b, e, k):\n    if k == 0:\n        for x in s:\n            print x,\n        print\n    else:\n        for x in range(b, e+1):\n            pm(s + [x], x+1, e, k-1)\n\ndef podmnoziny(n, k):\n    pm([], 1, n, k)\n 
def podmnoziny(n, k):\n    out = []\n    for i in range(2**n):\n        o = []\n        for j in range(n):\n            if 2**j  
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    if type(k) != "int":\n        return\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(se 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str(s 
def podmnoziny(n, k=0):\n    podmnozina("", k, range(1,n+1))\n\ndef podmnozina(retezec, k, seznam):\n    if len(retezec.split(" ")) == k+1:\n        print retezec[:-1]\n    for i in range(len(seznam)):\n        podmnozina(retezec+str 
def podmnoziny(n,k):\n    for i in pm(n,k,1):\n        for j in i:\n            print j,\n        print\n\ndef podmnoziny2(n, k):\n    for i in pm(n,k):\n        for j in i:\n            print j,\n        print\n\n    \ndef pm(n,k, b 
def podmnoziny(n,k):\n    for i in pm(n,k,1):\n        for j in i:\n            print j,\n        print\n\ndef podmnoziny2(n, k):\n    for i in pm(n,k):\n        for j in i:\n            print j,\n        print\n\n    \ndef pm(n,k, b 
def podmnoziny(n,k=-1):\n    if k==-1:\n        return\n    for i in pm(n,k,1):\n        for j in i:\n            print j,\n        print\n\ndef podmnoziny2(n, k):\n    for i in pm(n,k):\n        for j in i:\n            print j,\n 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n, k):\n    for j in range (n):\n    for i in range(1,k+1):\n            if i+2>k:\n        print i,i+1,i+2,\n    print\n 
def podmnoziny(n, k):\n    pm = []\n    for i in range(1,k+1):\n        pm.append(i)\n    print .join(str(x) for x in pm)\n    while True:\n        j = k-1\n        while pm[j]>=n-(k-1-j):\n            j -= 1\n        pm[j] += 1\ 
def podmnoziny(n=0, k=0):\n    if n<=0 or k<=0:\n        return\n    pm = []\n    for i in range(1,k+1):\n        pm.append(i)\n    print .join(str(x) for x in pm)\n    while True:\n        j = k-1\n        while pm[j]>=n-(k-1-j):\ 
def is_subs(subs):\n    prev = 0\n    occurences = {}\n    for i in subs:\n        if i > prev or i in occurences:\n            return False\n        occurences[i] = True\n        prev = i\n    return True\n\ndef podmnoziny(n, k):\n 
def is_subs(subs):\n    prev = 0\n    occurences = {}\n    for i in subs:\n        if i > prev or i in occurences:\n            return False\n        occurences[i] = True\n        prev = i\n    return True\n\ndef podmnoziny(n, k):\n 
def rek(l,p,n,k):\n    if k==0:\n        for i in l:\n            print i,\n        print\n        return\n    \n    for i in range(p,n+1):\n        l.append(i)\n        rek(l,i+1,n,k-1)\n        l.pop()\n\n\ndef podmnoziny(n, k) 
def rek(l,p,n,k):\n    if k==0:\n        for i in l:\n            print i,\n        print\n        return\n    \n    for i in range(p,n+1):\n        l.append(i)\n        rek(l,i+1,n,k-1)\n        l.pop()\n\n\ndef podmnoziny(n, k= 
def fun(l, k):\n    if k==0:\n        return [[]]\n    ret = []\n    for j in range(len(l)):\n        for i in fun(l[j+1:],k-1):       \n            res=[l[j]]\n            res.extend(i)\n            ret.append(res)\n    return ret\n 
def fun(l, k):\n    if k==0:\n        return [[]]\n    ret = []\n    for j in range(len(l)):\n        for i in fun(l[j+1:],k-1):       \n            res=[l[j]]\n            res.extend(i)\n            ret.append(res)\n    return ret\n 
def podmnoziny(n, k, start=1, x='):\n    for i in range(start,n-k+2):\n        if k>1:\n            podmnoziny(n, k-1, i+1,str(x)+str(i)+)\n        else:\n            print x+str(i)\n 
def podmnoziny(n, k=0, start=1, x='):\n    for i in range(start,n-k+2):\n        if k>1:\n            podmnoziny(n, k-1, i+1,str(x)+str(i)+)\n        elif k==1:\n            print x+str(i)\n 
def subsets(s, k):\n    if k == 0: return [[]]\n    if len(s) < k: return []\n    ss = []\n    for i in subsets(s[1:], k-1):\n        i.append(s[0])\n        ss.append(i)\n    ss.extend(subsets(s[1:], k))\n    return ss\n\ndef podmnozin 
def subsets(s, k):\n    if k == 0: return [[]]\n    if len(s) < k: return []\n    ss = []\n    for i in subsets(s[1:], k-1):\n        i.append(s[0])\n        ss.append(i)\n    ss.extend(subsets(s[1:], k))\n    return ss\n\ndef podmnozin 
def subsets(s, k):\n    if k == 0: return [[]]\n    if len(s) < k: return []\n    ss = []\n    for i in subsets(s[1:], k-1):\n        i.append(s[0])\n        ss.append(i)\n    ss.extend(subsets(s[1:], k))\n    return ss\n\ndef podmnozin 
def subsets(s, k):\n    if k == 0: return [[]]\n    if len(s) < k: return []\n    ss = []\n    for i in subsets(s[1:], k-1):\n        i.append(s[0])\n        ss.append(i)\n    ss.extend(subsets(s[1:], k))\n    return ss\n\ndef podmnozin 
def subsets(s, k):\n    if k == 0: return [[]]\n    if len(s) < k: return []\n    ss = []\n    for i in subsets(s[1:], k-1):\n        i.append(s[0])\n        ss.append(i)\n    ss.extend(subsets(s[1:], k))\n    return ss\n\ndef podmnozin 
def podmnoziny(n, k):\n    def pom(m):\n        if m[0]==n+1-k:\n            for i in m:\n                print i,\n            print\n        else:\n            for i in m:\n                print i,\n            print\n            \ 
def podmnoziny(n, k):\n    if k not in range(1,n+1):return ""\n    def pom(m):\n        if m[0]==n+1-k:\n            for i in m:\n                print i,\n            print\n        else:\n            for i in m:\n                pr 
def podmnoziny(n, k):\n    akt=[x for x in range(1, k+1)]\n    posl=[x+1 for x in range(n-k, n)]\n    while akt!=posl:\n        vypis(akt)\n        akt[-1]+=1\n        akt=OFchk(akt, n)\n         
def podmnoziny(n=0, k=0):\n    if n!=0 and k!=0:\n        akt=[x for x in range(1, k+1)]\n        posl=[x+1 for x in range(n-k, n)]\n        while akt!=posl:\n            vypis(akt)\n            akt[-1]+=1\n            akt=OFchk(akt, 
def vytvor_ktici(k, n, od):\n    if (k == 1):\n        jednotice = []\n        for i in range(od, n + 1):\n            jednotice.append(i)\n            return jednotice\n    else:\n        ktice  = []\n        odtice = [od]\n        vy 
def vytvor_ktice(k, n, od):\n    if (k == 1):\n        jednotice = []\n        for i in range(od, n + 1):\n            jednotice.append([i])\n        return jednotice\n    else:\n        ktice  = []\n        for j in range(od + 1, n % 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i*k,\n    print\n 
def podmnoziny(n, k):\n    for i in range(1, n-k+2):\n        p([i], n, k)\n    \ndef p(s, n, k):\n    l  = list(s)\n    if len(l) == k:\n        for i in range(k):\n            print l[i],\n        print\n        return\n    l.appen 
def podmnoziny(n, k):\n    for i in range(1, n-k+2):\n        p([i], n, k)\n    \ndef p(s, n, k):\n    l  = list(s)\n    if len(l) == k:\n        for i in range(k):\n            print l[i],\n        print\n        return\n    l.appen 
def podmnoziny(n, k=-1):\n    if k == -1:\n        return\n    for i in range(1, n-k+2):\n        p([i], n, k)\n    \ndef p(s, n, k):\n    l  = list(s)\n    if len(l) == k:\n        for i in range(k):\n            print l[i],\n 
def podmnoziny(n, k):\n    podmn = []\n    for i in range(2**n):\n        mnozina = []\n        for j in range(n):\n            if i  
def lead(i, s):\n 
def podmnoziny(n, k):\n    for i in range(1,n+1):\n        for j in range(i+1,n+1):\n            for k in range(j+1,n+1):\n                print i,j,k 
def podmnoziny(n, k):\nmain=[]\nfor i in range(1,n+1):\nmain.append(i)\nhlavna = main\npodmnoziny=[]\nfor i in range (1,k):\nfor number in hlavna:\nfor nextnumber in main:\nif str(nextnumber) not in str(number) and int( 
def podmnoziny(n, k):\nif k>1:\nmain=[]\nfor i in range(1,n+1):\nmain.append(i)\nhlavna = main\npodmnoziny=[]\nfor i in range (1,k):\nfor number in hlavna:\nfor nextnumber in main:\nif str(nextnumber) not in 
def factorial(x):\n    if x == 0:\n        return 1\n    elif x == 1:\n        return 1\n    else:\n        return x * factorial(x-1)\n\ndef dec_to_bin(x, length):\n    bin_number = '\n    while True:\n        bin_number += str(x % 
def factorial(x):\n    if x == 0:\n        return 1\n    elif x == 1:\n        return 1\n    else:\n        return x * factorial(x-1)\n\ndef dec_to_bin(x, length):\n    bin_number = '\n    while True:\n        bin_number += str(x % 
def powerset(s):\n    power_set=[[]]\n    for elem in s:\n        for sub_set in power_set:\n            power_set=power_set+[list(sub_set)+[elem]]\n    return power_set\n\ndef bublinkove_razeni(b):\n    a = []\n    for i in b:\n 
def funkcia(pole,n,k,hodnota = 0):\n    while(pole!=range(n-k+1,n+1)):\n        while(hodnota<n-k+1+len(pole)):\n            hodnota += 1\n            pole.append(hodnota)\n            if(len(pole) < k):\n                pole = fu 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def yield_podmnoziny(n,k): \n    m, h  = 0, k \n    a = list(range(1,k+1)) \n    yield a \n    while True: \n        if m < n-h: \n            h = 1 \n        else: \n            h += 1 \n        m = a[k-h] + 1 \n        for j in 
def podmnoziny(n, k):\n    for podmnozina in seznam_podmnozin(range(1,n+1),n):\n        for prvek in podmnozina: print prvek,\n        print\ndef seznam_podmnozin(vstupni_mnozina, n):\n    if n == 0 or n > len(vstupni_mnozina): return None 
def podmnoziny(n, k):\n    for i in range(1,n+1):\n        for j in range(i+1,n+1):\n        for k in range(j+1,n+1):\n        print i, j, k\n 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n):\n    return \n\ndef podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 
def podmnoziny(n, k):\n    if k == 0:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in range(s 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def podmnoziny(n, k):\n    if k == None:\n        return False\n    for i in r_podmnoziny(1,n, k):\n        for j in i:\n            print j,\n        print\n\ndef r_podmnoziny(s,n, k):\n    if k == 1:\n        return [[i] for i in rang 
def \n\n\ndef podmnoziny(n, k):\n\n    s = range(1,n+1)  
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n,k):\n    podmn=[]\n    for i in range(2**n):\n        mnozina=[]\n        for j in range(n):\n            if i 
def vrat_pole(velikost, maximum, pole_nechtenych):\n    result = []\n    p_n = pole_nechtenych[:]\n    for i in range(1, maximum + 1):\n        if (not str(i) in pole_nechtenych):\n            if velikost > 1:\n                p_n.append( 
def factorial(n):\n    result = 1\n    for i in range(1,n+1):\n        result *= i\n\n    return result\n\ndef binomial(n,k):\n    return factorial(n)/(factorial(n-k) * factorial(k))\n\ndef podmnoziny(n, k):\n    if (n == 0 or k == 0 
def binary(n,k):\n    masks = []\n    for i in range(2**k-1,2**n):\n        new_mask = n*[0]\n        x = i\n        index = 0\n         
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n, k):\n    for i in range(1,k+1):\n        print i,\n    print\n 
def podmnoziny(n, k):\n    a=[0]*n\n    for i in range(n):\n        a[i]=i+1\n    for i in range(n-k+1):\n        for j in range(i,n-k+1):\n            for r in range(j,n-k+1):\n                print a[i],a[j+1],a[r+2]\n\n 
def podmnoziny(n, k):\n    for i in range(1,n+1):\n        print i,\n        for j in range(1,k):\n            print j,\n        print\n 
def r(p, v, index, k):\n    if len(v) == k or index == len(p):\n        if len(v) == k:\n            for x in v:\n                print x,\n            print\n    else:\n        v.append(p[index])\n        r(p, v, index + 1, k)\n 
def binary(cislo):\n    s='\n    while cislo>0:\n        s=str(cislo%2)+s\n        cislo=int(cislo/2)\n    return s\ndef podmnoziny(n,k):\n    l=[]\n    vys=[]\n    po='\n    pom=[]\n    for i in range(1,n+1):\n        l.append( 
def podmnoziny(n, k):\n    p = []\n    for i in range(1, k + 1):\n        p.append(i)\n\n    while True:\n        for i in range(len(p)):\n            print p[i],\n        print\n        chi = k - 1\n        while True:\n 
def podmnoziny(n, k):\n    p = []\n    for i in range(1, k + 1):\n        p.append(i)\n\n    while True:\n        for i in range(len(p)):\n            print p[i],\n        print\n        chi = k - 1\n        while True:\n 
