let joseph k poids = let n = vect_length poids in let vus = make_matrix (k+1) n false in let peut = make_matrix (k+1) n false in (* est-il possible de faire j avec les fruits d'id > i ? *) let rec possible j i = print_int i;print_string " " ; print_int j;print_newline (); (i0 && ( if not vus.(j).(i) then peut.(j).(i) <- possible j (i+1) || possible (j-poids.(i)) (i+1) ; vus.(j).(i)<-true ; peut.(j).(i) ))) in possible k 0 ;; joseph 100 [|42;54;5;3;2;1|];;