SlideShare uma empresa Scribd logo
1 de 22
AMR11A - Magic Grid
Mauro Roberto Costa - maurorcsc@gmail.com
Problema
AMR11A - Magic Grid
http://www.spoj.com/problems/AMR11A/
Descrição do Problema
Ajude Harry Potter a encontrar a Pedra Filosofal. Você receberá uma Magic Grid
com R linhas e C colunas. Cada célula pode possuir um dragão, que fará o Harry
gastar energia para derrotá-lo, ou uma poção, que aumentará a energia de Harry.
Se sua energia cair para 0 ou menos durante a jornada, Harry morrerá. A jornada
é iniciada na célula (1,1) e Harry só pode mover para direita ou para baixo, para a
célula (i+1, j) ou (i, j+1). A Pedra Filosofal encontra-se na célula (R, C).
Entrada
A entrada do problema é composta por um inteiro T indicando o número de casos
de testes. Para cada caso de teste são dados os valores R e C, que representam
o número de linhas e colunas da Magic Grid, respectivamente. A descrição da
Magic Grid é dada em R linhas com C inteiros. Células (i, j) < 0 contêm dragão, as
demais possuem poção.
Saída
A saída é composta por T linhas, uma para cada caso de teste, contendo o valor
mínimo de energia que Harry precisa começar na célula (1,1) para conseguir
completar a jornada até a célula (R,C).
Solução Recursiva
rec(i, j):
se i = R e j = C então:
retorne 1
senão:
c1 <- c2 <- INFINITO
se i+1 < R então:
c1 <- max(rec(i+1, j)-M[i][j], 1)
se j+1 < C então:
c2 <- max(rec(i, j+1)-M[i][j], 1)
retorne min(c1, c2)
Programação Dinâmica
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M Matriz S
A matriz M representa a Matriz de Entrada do problema. A Matriz S é uma matriz auxiliar ou
Matriz de Solução. O preenchimento da matriz S será realizado da direita para esquerda, de
baixo para cima.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
1
Matriz S
A célula (R,C) da Matriz de Solução é preenchida com 1, porque é necessário que Harry possua
pelo menos 1 de energia ao chegar no final.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
1
Matriz S
Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] =
S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
3 1
Matriz S
Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] =
S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
3 1
Matriz S
Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] =
S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 3 1
Matriz S
Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] =
S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 3 1
Matriz S
Para cada posição na coluna C (de baixo para cima), se S[i+1][C] - M[i][C] > 0, S[i][C] = S[i+1][C] -
M[i][C]. Caso contrário, o valor de S[i+1][C] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
4
2 3 1
Matriz S
Para cada posição na coluna C (de baixo para cima), se S[i+1][C] - M[i][C] > 0, S[i][C] = S[i+1][C] -
M[i][C]. Caso contrário, o valor de S[i+1][C] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
4
2 3 1
Matriz S
Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o
menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 4
2 3 1
Matriz S
Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o
menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 4
2 3 1
Matriz S
Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o
menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 2 4
2 3 1
Matriz S
Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o
menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
Preenchimento da Matriz
0 1 -3
1 -2 0
Matriz M
2 2 4
2 3 1
Matriz S
A solução do problema encontra-se na célula (1,1) da matriz.
Pseudocódigo da Solução
DP():
S[R][C] <- 1
para i de C-1 até 1 faça:
se S[R][i+1] - M[R][i] > 0 então:
S[R][i] <- S[R][i+1] - M[R][i]
senão:
S[R][i] <- 1
para j de R-1 até 1 faça:
se S[j+1][C] - M[j][C] > 0 então:
S[j][C] <- S[j+1][C] - M[j][C]
senão:
S[j][C] <- 1
para i de R-1 até 0 faça:
para j de C-1 até 0 faça:
menor <- min(S[i+1][j], S[i][j+1])
se menor - M[i][j] > 0 então:
S[i][j] <- menor - M[i][j]
senão:
s[i][j] <- 1
retorne S[1][1]
Obrigado

Mais conteúdo relacionado

Mais procurados

Lecture 2 data structures and algorithms
Lecture 2 data structures and algorithmsLecture 2 data structures and algorithms
Lecture 2 data structures and algorithms
Aakash deep Singhal
 
Lec03 04-time complexity
Lec03 04-time complexityLec03 04-time complexity
Lec03 04-time complexity
Abbas Ali
 

Mais procurados (20)

Algoritmos - Aula 07 B - Exercicios Vetores - Resolucao
Algoritmos - Aula 07 B - Exercicios Vetores - ResolucaoAlgoritmos - Aula 07 B - Exercicios Vetores - Resolucao
Algoritmos - Aula 07 B - Exercicios Vetores - Resolucao
 
Backtracking
Backtracking  Backtracking
Backtracking
 
Lecture 2 data structures and algorithms
Lecture 2 data structures and algorithmsLecture 2 data structures and algorithms
Lecture 2 data structures and algorithms
 
Estrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas EncadeadasEstrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas Encadeadas
 
Trees data structure
Trees data structureTrees data structure
Trees data structure
 
Lec03 04-time complexity
Lec03 04-time complexityLec03 04-time complexity
Lec03 04-time complexity
 
CS8451 - Design and Analysis of Algorithms
CS8451 - Design and Analysis of AlgorithmsCS8451 - Design and Analysis of Algorithms
CS8451 - Design and Analysis of Algorithms
 
Disjoint sets
Disjoint setsDisjoint sets
Disjoint sets
 
Aula 10
Aula 10 Aula 10
Aula 10
 
Merge sort
Merge sortMerge sort
Merge sort
 
All pair shortest path
All pair shortest pathAll pair shortest path
All pair shortest path
 
Knuth morris pratt string matching algo
Knuth morris pratt string matching algoKnuth morris pratt string matching algo
Knuth morris pratt string matching algo
 
Estruturas de dados em Python
Estruturas de dados em PythonEstruturas de dados em Python
Estruturas de dados em Python
 
Segment tree
Segment treeSegment tree
Segment tree
 
Sequential & binary, linear search
Sequential & binary, linear searchSequential & binary, linear search
Sequential & binary, linear search
 
Unit I-Data structures stack & Queue
Unit I-Data structures stack & QueueUnit I-Data structures stack & Queue
Unit I-Data structures stack & Queue
 
Selection sort
Selection sortSelection sort
Selection sort
 
Data Structure: TREES
Data Structure: TREESData Structure: TREES
Data Structure: TREES
 
Algoritmos - Matrizes
Algoritmos - MatrizesAlgoritmos - Matrizes
Algoritmos - Matrizes
 
Creating Objects in Python
Creating Objects in PythonCreating Objects in Python
Creating Objects in Python
 

Destaque

مادة الفروق الفردية- لمسه- المجموعة الاولى
مادة الفروق الفردية- لمسه- المجموعة الاولىمادة الفروق الفردية- لمسه- المجموعة الاولى
مادة الفروق الفردية- لمسه- المجموعة الاولى
Salah Abdelsalam
 
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
Juul van Hoof
 
Report Out Presentation - Air(2nd)
Report Out Presentation - Air(2nd)Report Out Presentation - Air(2nd)
Report Out Presentation - Air(2nd)
Sarah Hartman
 
EPC Oral Presentation 1 - Religious Buildings around the world
EPC Oral Presentation 1 - Religious Buildings around the worldEPC Oral Presentation 1 - Religious Buildings around the world
EPC Oral Presentation 1 - Religious Buildings around the world
Ong En
 
Vliv pristehovalcu v_cr
Vliv pristehovalcu v_crVliv pristehovalcu v_cr
Vliv pristehovalcu v_cr
Kvjeta
 

Destaque (20)

Синдром Вольфа-Паркинсона
Синдром Вольфа-ПаркинсонаСиндром Вольфа-Паркинсона
Синдром Вольфа-Паркинсона
 
Paula
PaulaPaula
Paula
 
Content Delivery in an On-Demand Age
Content Delivery in an On-Demand AgeContent Delivery in an On-Demand Age
Content Delivery in an On-Demand Age
 
scan3
scan3scan3
scan3
 
Java, android 스터티5
Java, android 스터티5Java, android 스터티5
Java, android 스터티5
 
Global 2 d x ray equipment market- shares, strategies, and forecasts, worldwi...
Global 2 d x ray equipment market- shares, strategies, and forecasts, worldwi...Global 2 d x ray equipment market- shares, strategies, and forecasts, worldwi...
Global 2 d x ray equipment market- shares, strategies, and forecasts, worldwi...
 
Comunicacion escrita 1
Comunicacion escrita 1Comunicacion escrita 1
Comunicacion escrita 1
 
مادة الفروق الفردية- لمسه- المجموعة الاولى
مادة الفروق الفردية- لمسه- المجموعة الاولىمادة الفروق الفردية- لمسه- المجموعة الاولى
مادة الفروق الفردية- لمسه- المجموعة الاولى
 
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
150326 Report on LGBT by Congress_Local_Regional_Authorities_CoE_final
 
Report Out Presentation - Air(2nd)
Report Out Presentation - Air(2nd)Report Out Presentation - Air(2nd)
Report Out Presentation - Air(2nd)
 
EPC Oral Presentation 1 - Religious Buildings around the world
EPC Oral Presentation 1 - Religious Buildings around the worldEPC Oral Presentation 1 - Religious Buildings around the world
EPC Oral Presentation 1 - Religious Buildings around the world
 
Atitudes - Psicologia
Atitudes - PsicologiaAtitudes - Psicologia
Atitudes - Psicologia
 
Protecting profits when currencies fluctuate
Protecting profits when currencies fluctuateProtecting profits when currencies fluctuate
Protecting profits when currencies fluctuate
 
Vliv pristehovalcu v_cr
Vliv pristehovalcu v_crVliv pristehovalcu v_cr
Vliv pristehovalcu v_cr
 
Projeto de Lei nº 034-2012 Institui o programa Brigadas de Prevenção e Combat...
Projeto de Lei nº 034-2012 Institui o programa Brigadas de Prevenção e Combat...Projeto de Lei nº 034-2012 Institui o programa Brigadas de Prevenção e Combat...
Projeto de Lei nº 034-2012 Institui o programa Brigadas de Prevenção e Combat...
 
Diapositiva 1
Diapositiva 1Diapositiva 1
Diapositiva 1
 
MRP Referral Agent Opportunity Postcard
MRP Referral Agent Opportunity PostcardMRP Referral Agent Opportunity Postcard
MRP Referral Agent Opportunity Postcard
 
2014 06-16-feminism and ecofeminism
2014 06-16-feminism and ecofeminism2014 06-16-feminism and ecofeminism
2014 06-16-feminism and ecofeminism
 
La vida en altres temps i ara
La vida en altres temps i araLa vida en altres temps i ara
La vida en altres temps i ara
 
Tspkab
TspkabTspkab
Tspkab
 

Último

472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
GisellySobral
 
Aspectos históricos da educação dos surdos.pptx
Aspectos históricos da educação dos surdos.pptxAspectos históricos da educação dos surdos.pptx
Aspectos históricos da educação dos surdos.pptx
profbrunogeo95
 
História concisa da literatura brasileira- Alfredo Bosi..pdf
História concisa da literatura brasileira- Alfredo Bosi..pdfHistória concisa da literatura brasileira- Alfredo Bosi..pdf
História concisa da literatura brasileira- Alfredo Bosi..pdf
GisellySobral
 

Último (20)

472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
472037515-Coelho-Nelly-Novaes-Literatura-Infantil-teoria-analise-e-didatica-p...
 
SQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdfSQL Parte 1 - Criação de Banco de Dados.pdf
SQL Parte 1 - Criação de Banco de Dados.pdf
 
transcrição fonética para aulas de língua
transcrição fonética para aulas de línguatranscrição fonética para aulas de língua
transcrição fonética para aulas de língua
 
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptxEBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
EBPAL_Serta_Caminhos do Lixo final 9ºD (1).pptx
 
Tema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdfTema de redação - A prática do catfish e seus perigos.pdf
Tema de redação - A prática do catfish e seus perigos.pdf
 
QUESTÃO 4 Os estudos das competências pessoais é de extrema importância, pr...
QUESTÃO 4   Os estudos das competências pessoais é de extrema importância, pr...QUESTÃO 4   Os estudos das competências pessoais é de extrema importância, pr...
QUESTÃO 4 Os estudos das competências pessoais é de extrema importância, pr...
 
Aspectos históricos da educação dos surdos.pptx
Aspectos históricos da educação dos surdos.pptxAspectos históricos da educação dos surdos.pptx
Aspectos históricos da educação dos surdos.pptx
 
UFCD_8291_Preparação e confeção de peixes e mariscos_índice.pdf
UFCD_8291_Preparação e confeção de peixes e mariscos_índice.pdfUFCD_8291_Preparação e confeção de peixes e mariscos_índice.pdf
UFCD_8291_Preparação e confeção de peixes e mariscos_índice.pdf
 
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na ÁfricaPeriodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
Periodo da escravidAo O Brasil tem seu corpo na América e sua alma na África
 
As teorias de Lamarck e Darwin para alunos de 8ano.ppt
As teorias de Lamarck e Darwin para alunos de 8ano.pptAs teorias de Lamarck e Darwin para alunos de 8ano.ppt
As teorias de Lamarck e Darwin para alunos de 8ano.ppt
 
Química-ensino médio ESTEQUIOMETRIA.pptx
Química-ensino médio ESTEQUIOMETRIA.pptxQuímica-ensino médio ESTEQUIOMETRIA.pptx
Química-ensino médio ESTEQUIOMETRIA.pptx
 
"Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande""Nós Propomos! Escola Secundária em Pedrógão Grande"
"Nós Propomos! Escola Secundária em Pedrógão Grande"
 
Nós Propomos! Canil/Gatil na Sertã - Amigos dos Animais
Nós Propomos! Canil/Gatil na Sertã - Amigos dos AnimaisNós Propomos! Canil/Gatil na Sertã - Amigos dos Animais
Nós Propomos! Canil/Gatil na Sertã - Amigos dos Animais
 
Apostila-Letramento-e-alfabetização-2.pdf
Apostila-Letramento-e-alfabetização-2.pdfApostila-Letramento-e-alfabetização-2.pdf
Apostila-Letramento-e-alfabetização-2.pdf
 
Histogramas.pptx...............................
Histogramas.pptx...............................Histogramas.pptx...............................
Histogramas.pptx...............................
 
História concisa da literatura brasileira- Alfredo Bosi..pdf
História concisa da literatura brasileira- Alfredo Bosi..pdfHistória concisa da literatura brasileira- Alfredo Bosi..pdf
História concisa da literatura brasileira- Alfredo Bosi..pdf
 
Slides Lição 07, Central Gospel, As Duas Testemunhas Do Final Dos Tempos.pptx
Slides Lição 07, Central Gospel, As Duas Testemunhas Do Final Dos Tempos.pptxSlides Lição 07, Central Gospel, As Duas Testemunhas Do Final Dos Tempos.pptx
Slides Lição 07, Central Gospel, As Duas Testemunhas Do Final Dos Tempos.pptx
 
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdfUFCD_10659_Ficheiros de recursos educativos_índice .pdf
UFCD_10659_Ficheiros de recursos educativos_índice .pdf
 
Dados espaciais em R - 2023 - UFABC - Geoprocessamento
Dados espaciais em R - 2023 - UFABC - GeoprocessamentoDados espaciais em R - 2023 - UFABC - Geoprocessamento
Dados espaciais em R - 2023 - UFABC - Geoprocessamento
 
Poema - Maio Laranja
Poema - Maio Laranja Poema - Maio Laranja
Poema - Maio Laranja
 

AMR11A - Magic Grid

  • 1. AMR11A - Magic Grid Mauro Roberto Costa - maurorcsc@gmail.com
  • 2. Problema AMR11A - Magic Grid http://www.spoj.com/problems/AMR11A/
  • 3. Descrição do Problema Ajude Harry Potter a encontrar a Pedra Filosofal. Você receberá uma Magic Grid com R linhas e C colunas. Cada célula pode possuir um dragão, que fará o Harry gastar energia para derrotá-lo, ou uma poção, que aumentará a energia de Harry. Se sua energia cair para 0 ou menos durante a jornada, Harry morrerá. A jornada é iniciada na célula (1,1) e Harry só pode mover para direita ou para baixo, para a célula (i+1, j) ou (i, j+1). A Pedra Filosofal encontra-se na célula (R, C).
  • 4. Entrada A entrada do problema é composta por um inteiro T indicando o número de casos de testes. Para cada caso de teste são dados os valores R e C, que representam o número de linhas e colunas da Magic Grid, respectivamente. A descrição da Magic Grid é dada em R linhas com C inteiros. Células (i, j) < 0 contêm dragão, as demais possuem poção.
  • 5. Saída A saída é composta por T linhas, uma para cada caso de teste, contendo o valor mínimo de energia que Harry precisa começar na célula (1,1) para conseguir completar a jornada até a célula (R,C).
  • 6. Solução Recursiva rec(i, j): se i = R e j = C então: retorne 1 senão: c1 <- c2 <- INFINITO se i+1 < R então: c1 <- max(rec(i+1, j)-M[i][j], 1) se j+1 < C então: c2 <- max(rec(i, j+1)-M[i][j], 1) retorne min(c1, c2)
  • 8. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M Matriz S A matriz M representa a Matriz de Entrada do problema. A Matriz S é uma matriz auxiliar ou Matriz de Solução. O preenchimento da matriz S será realizado da direita para esquerda, de baixo para cima.
  • 9. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 1 Matriz S A célula (R,C) da Matriz de Solução é preenchida com 1, porque é necessário que Harry possua pelo menos 1 de energia ao chegar no final.
  • 10. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 1 Matriz S Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] = S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
  • 11. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 3 1 Matriz S Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] = S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
  • 12. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 3 1 Matriz S Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] = S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
  • 13. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 3 1 Matriz S Para cada posição na linha R (da direita para a esquerda), se S[R][j+1] - M[R][j] > 0, S[R][j] = S[R][j+1] - M[R][j]. Caso contrário, o valor de S[R][j+1] = 1.
  • 14. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 3 1 Matriz S Para cada posição na coluna C (de baixo para cima), se S[i+1][C] - M[i][C] > 0, S[i][C] = S[i+1][C] - M[i][C]. Caso contrário, o valor de S[i+1][C] = 1.
  • 15. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 4 2 3 1 Matriz S Para cada posição na coluna C (de baixo para cima), se S[i+1][C] - M[i][C] > 0, S[i][C] = S[i+1][C] - M[i][C]. Caso contrário, o valor de S[i+1][C] = 1.
  • 16. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 4 2 3 1 Matriz S Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
  • 17. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 4 2 3 1 Matriz S Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
  • 18. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 4 2 3 1 Matriz S Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
  • 19. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 2 4 2 3 1 Matriz S Para cada posição de (R-1, C-1) até (1,1), encontra-se o menor entre S[i+1][j] e S[i][j+1]. Se o menor - M[i][j] > 0, S[i][j] = menor - M[i][j]. Caso contrário, S[i][j] = 1.
  • 20. Preenchimento da Matriz 0 1 -3 1 -2 0 Matriz M 2 2 4 2 3 1 Matriz S A solução do problema encontra-se na célula (1,1) da matriz.
  • 21. Pseudocódigo da Solução DP(): S[R][C] <- 1 para i de C-1 até 1 faça: se S[R][i+1] - M[R][i] > 0 então: S[R][i] <- S[R][i+1] - M[R][i] senão: S[R][i] <- 1 para j de R-1 até 1 faça: se S[j+1][C] - M[j][C] > 0 então: S[j][C] <- S[j+1][C] - M[j][C] senão: S[j][C] <- 1 para i de R-1 até 0 faça: para j de C-1 até 0 faça: menor <- min(S[i+1][j], S[i][j+1]) se menor - M[i][j] > 0 então: S[i][j] <- menor - M[i][j] senão: s[i][j] <- 1 retorne S[1][1]