Python | Diferença máxima na string
Às vezes, podemos ter um problema em que solicitamos obter a diferença máxima de 2 números de Strings, mas com uma restrição de ter os números em sucessão. Este tipo de problema pode ocorrer durante a programação competitiva. Vamos discutir algumas maneiras pelas quais esse problema pode ser resolvido.
Método # 1: Usando max() + zip()
+ compreensão de lista
Este problema pode ser resolvido usando a combinação das três funções acima em que a função max pode ser usada para obter o valor máximo, zip e compreensão de lista fazendo a tarefa de estender a lógica para toda a lista.
test_string
=
'6543452345456987653234'
(
"The original string : "
+
str
(test_string))
test_string
=
list
(test_string)
res
=
max
(
abs
(
int
(a)
-
int
(b))
for
a, b
in
zip
(test_string, test_string[
1
:]))
(
"The maximum consecutive difference is : "
+
str
(res))
A string original: 6543452345456987653234 A diferença máxima consecutiva é: 3
Método 2: Usando max() + map() + operator.sub
O problema acima também pode ser resolvido usando outra combinação de funções. Nessa combinação, as funções de mapa executam a tarefa de estender a lógica para toda a lista e o suboperador é usado para fazer a diferença.
from
operator
import
sub
test_string
=
'6543452345456987653234'
(
"The original string : "
+
str
(test_string))
res
=
max
(
map
(sub,
map
(
int
, test_string),
map
(
int
, test_string[
1
:])))
(
"The maximum consecutive difference is : "
+
str
(res))
A string original: 6543452345456987653234 A diferença máxima consecutiva é: 3
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva