Array em c

Gente, eu tô com uma dificuldade muito grande pra entender como funciona o código com array, tipo eu entendo que começa do 0 até n-1 e tudo mais, mas quando vou resolver um problema simplesmente não consigo sair, tipo:

                  Descrição

Yuto adora jogar RPG com seus amigos, mas tem muito dificuldade na criação de ficha de personagem. No Dungeon and Dragons, que é o seu sistema favorito, há 6 atributos: Força, Destreza, Constituição, Sabedoria, Inteligência e Carisma, e seus valores são determinados pela seguinte regra: São jogados 4d6 (4 dados de 6 faces) e os três maiores valores são somados.

Yuto está desesperado, hoje a noite terá a primeira sessão e ele ainda não determinou os atributos de seu guerreiro, Kayn. Você, como um bom amigo e programador, decidiu ajudá-lo criando um programa para determinar esses atributos. Dado os dados rolados por ele e a ordem dos atributos, retorne os valores de cada atributo.

          Formato de entrada

A entrada consiste em 6 linhas com 4 números, e uma outra linha com a "ordem de prioridade" dos atributos, ou seja, 2 1 5 3 6 4 significa que:

For receberá a 2º maior soma Des receberá a 1º maior soma Con receberá a 5º maior soma Sab receberá a 3º maior soma Int receberá a 6º maior soma Car receberá a 4º maior soma

            Formato de saída

A saída consiste no nome do atributo com seu respectivo valor.

For =

Des =

Con =

Sab =

Int =

Car =

Exemplos de:

Entrada

2 1 3 4

4 1 2 5

1 6 5 2

5 1 6 2

4 5 3 6

6 2 5 3

1 5 3 4 2 6

Saída

For = 15

Des = 11

Con = 13

Sab = 13

Int = 14

Car = 9

Entrada

6 1 4 2

2 6 1 4

1 6 3 4

5 3 2 4

5 4 1 3

1 3 4 2

2 4 6 3 5 1

Saída

For = 12

Des = 12

Con = 9

Sab = 12

Int = 12

Car = 13

Edit: eu só posso usar recursão e array (além dos comandos de decisão)