dichotomie? Coloriage : (On a toujours |K| + |C| > |K_max|, sinon ça sert à rien) Lorsque |C| = 10 (par exemple) et |K| < |K_max|, faire un coloriage du graphe induit par C (ça se fait rapidement... mais ne pas le faire de manière exacte). Si on a |K| + nb_couleurs <= |K_max|, alors on a perdu (42). Utiliser des bitsets plus simples : Faire un typedef bitset_descriptor *set; On peut s'arranger pour faire, lors de la création d'un bitset, *un seul malloc*, dont la première partie est utilisée pour le descripteur et la seconde pour le tableau de bits. Analyse des cache miss ?