Si un info passe par là
let rec ajouter = fun
x [a] -> [[x]@a]
| x t::q -> [[x]#[t]]@(ajouter x q);;
C'est peut-être de la grosse merde, mais je peux même pas le tester... CamL me met une erreur au niveau des '::' de 't::q', et je vois pas pourquoi.
Le deuxième argument est une liste de liste, ça a bien une tête et une queue 