Haskell — Subconjunts

Aquest exercici explora la generació exhaustiva de subconjunts.

  1. Feu una funció zerosNones1 :: Int -> [[Int]] que, donat un n0n\ge0, retorni totes les combinacions de zz zeros i uu uns tals que z+u=nz + u = n.

  2. Feu una funció zerosNones2 :: Int -> Int -> [[Int]] que, donats n0n\ge0 i 0un0\le u\le n, retorni totes les combinacions de nun-u zeros i uu uns.

  3. Feu una funció subsets1 :: [a] -> [[a]] que, donats n0n\ge0 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 m0m\ge0 i n0n\ge0 elements, escrigui tots els subconjunts de mm elements que es poden formar amb els nn 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