Quella che ti chiede di fare è, in calcolo combinatorio, una "disposizione semplice" senza ripetizioni.
Prendi il vettore dei numeri e lo ordini (crescente).
Poi fai una matrice (vettore di vettori) in cui il primo indice è un progressivo che raccoglie il numero di combinazioni che ottieni facendo, con cicli ricorsivi, una disposizione semplice senza le ripetizioni, dell'array iniziale.
p.e.
Serie di n numeri: 1,7,3,4,5..
La ordini: 1,3,4,5,7..
Li combini con cicli ricorsivi in un vettore di vettori c[num,lungh] in cui avrai
num=numero di combinazioni, che dovrebbe essere nc=n!/(n-2)! e che per n=5 sono 20.
lungh=lunghezza massima combinazione, che sarà sempre lungh <=n.
Inizi i cicli annidati per tutte le combinazioni che iniziano con 1...
c[0] =1,3;
c[1]= 1,4;
...
c[4]=1,7;
altro ciclo..
c[5]=1,3,4,5,7;
c[6]=1,3,4,5;
c[7]=1,3,4;
c[8]=1,4,5,7;
c[9]=1,5,7
Poi quelle con il 3...
c[10]=3,4;
c[11]=3,5;
...
c[13]=3,4,5,7;
c[14]=3,4,5;
c[15]=3,4,7;
c[16]=3,5,7;
poi il 4...
c[17]=4,5;
..
Il 5...
c[19]=5,7
Che fa appunto 20 righe cioè 20 insiemi ordinati secondo la disposizione semplice ordinata.
Inviato dal mio Nexus 5 utilizzando Tapatalk