Este trabalho é do genero de o sudoku. E eu tenho que corrigir algo como tres letras repetidas num tabuleiro, só que a comparacao esta a fazer mal pk corrigi-me em qualquer situacao os 3 elementos da primeira linhasem estes serem iguais. Envio o codigo das funcoes auxiliares.     char caracter_no_tabuleiro(int linha, int coluna)
{    
    char a;
    char *l = linha_tabuleiro(linha);
    a=l[coluna-1];
    return a;
}
int compara(int linha1,int coluna1,int linha2,int coluna2){
if (caracter_no_tabuleiro(linha1,coluna1) == caracter_no_tabuleiro(linha2,coluna2) && (caracter_no_tabuleiro(linha1-1,coluna1)==caracter_no_tabuleiro(linha2,coluna2-1)))
                return 0;
                else return -1;
                            }  e o tabuleiro é do genero (A) B [C] D                                        B  C  D  A                                        C  C  C  B                                       (A)(B)[A]B  em que por exemplo a linha1 coluna1 é o A e linha1-1 coluna1 é (.