-
- Considere a posição Linha 0 e Coluna 0 (0,0) como início;
-
- Considere a posição (N, N) como posição final;
-
- Percorra a matriz a partir do início, somando a cada passo, o próximo maior valor encontrado;
-
- O próximo valor pode ser o que está na mesma linha e imediatamente à direita, imediatamente à esquerda, bem como, o que está na coluna abaixo do numero corrente;
5.1) - Há apenas uma exceção de percurso. Ao chegar na última linha deve-se percorre-la até o fim sem realizar mais migrações para colunas acima.
-
- Andando na matriz conforme as regras acima, qual o maior caminho do início até o final, sabendo-se que a soma das posições representa o tamanho do caminho.
-
- Primeiramente para a resolução do Problema o é solicitado ao Usuario que digite um valor para N;
1.1) - Onde o valor de N digitado pelo Usuario cria uma Matriz de NxN;
-
- Logo em seguida o programa percorre e trata essa Matriz com uma sequencia de if's e else's, onde analiza qual melhor caminho o programa deve seguir;
-
- Após percorrer toda a Matriz passando pelo maior valor e substitundo os valores ja passados por "-1" ele soma todos os valores que o caminho do programa percorreu;
-
- Após isso ele imprime o resultado na tela para ao Usuario;
-
- Há mais de uma maneira de resolver esse problema ? Sim,exemplos diferentes dos que foram utilizados é com ponteiros;
-
- Há algoritmos em literatura que resolvam esse problema ? Os algoritmos Quicksort e Bubblesort que são algoritimos de ordenação são exemplos;
-
- Pode existir mais de um caminho cujo valor total é o maximo? Sim, porém alguns numeros podem impedir que esse seja o menor caminho;