Haskell — Subconjunts

Aquest exercici explora la generació exhaustiva de subconjunts.

1.  Feu una funció zerosNones1 :: Int -> [[Int]] que, donat un n ≥ 0,
    retorni totes les combinacions de z zeros i u uns tals que
    z + u = n.

2.  Feu una funció zerosNones2 :: Int -> Int -> [[Int]] que, donats
    n ≥ 0 i 0 ≤ u ≤ n, retorni totes les combinacions de n − u zeros i u
    uns.

3.  Feu una funció subsets1 :: [a] -> [[a]] que, donats n ≥ 0 elements,
    retorni una llista amb tots els subconjunts que es poden formar amb
    els elements.

4.  Feu una funció subsets2 :: Int -> [a] -> [[a]] que, donats un nombre
    m ≥ 0 i n ≥ 0 elements, escrigui tots els subconjunts de m elements
    que es poden formar amb els n elements.

Observació

Per tal que no importi l’ordre en que genereu la solució, els jocs de
proves ordenen el resultat. Per a això, importeu la funció sort del
mòdul Data.List encara que no la feu servir.

Puntuació

Cada funció puntua 25 punts.

Informació del problema

Autoria: Jordi Petit

Generació: 2026-02-03T17:08:39.653Z

© Jutge.org, 2006–2026.
https://jutge.org
