Dovresti implementare un algoritmo ricorsivo che, preso il vettore di input, generi tutte le permutazioni (con ripetizione) di esso. Dovresti crearti dei vettori di mark e soluzione, nonchè ordinare il vettore di partenza (utile per i simboli ripetuti) e inizializzarli opportunamente. Adesso sei pronto per mettere in piedi la funzione ricorsiva che fa il lavoro che ti serve, spero averti dato l'idea di lavoro.