Vediamo se ho capito...
Tu metti tutti i valori in un array monodimensionale e vuoi indicizzarli, e pescarli in base al bisogno. In tal caso io farei cosi:

Preso come esempio la tua matrice triangolare. La posizione di un elemento é data da fattoriale(riga-1)+colonna

Per esempio prendiamo l'elemento che contiene "4" la sua posizione é in riga 4 colonna 2

se prendiamo gli elementi in sequenza esso occupa il posto:

(4-1)!+2=6+2=8

Facendo attenzione che in C gli array parono da 0 e dunque dovrai sottrarre 1 dal risultato finale.

Spero di aver intuito giusto il tuo problema.