Skip to main content
added 20 characters in body
Source Link
Xcali
  • 16.2k
  • 2
  • 15
  • 39

Perl 5 -ap, 156156 147 bytes

for(;$i<@F;$p=++$i)$q='$F[$i';map{if($F[$ieval"\$i++while$q]$_"}"<$q+1]",">$q+1]&&$q]>$q+2]&&\$i<\@F"if eval"$q-1]-$F[$i+1]||$F[$i]>$F[$i+1]){$i++while$F[$i]<$F[$i+1];$i++while$F[$i]>$F[$i+1]&&$i<@F&&$F[$i]>$F[$i+2]}$\$q+1]||$q]>$q+1]";$\.=$".sum@F[$p..$i]}$i];($p=++$i)<@F&&redo}{

Try it online!Try it online!

Perl 5 -ap, 156 bytes

for(;$i<@F;$p=++$i){if($F[$i-1]-$F[$i+1]||$F[$i]>$F[$i+1]){$i++while$F[$i]<$F[$i+1];$i++while$F[$i]>$F[$i+1]&&$i<@F&&$F[$i]>$F[$i+2]}$\.=$".sum@F[$p..$i]}}{

Try it online!

Perl 5, 156 147 bytes

$q='$F[$i';map{eval"\$i++while$q]$_"}"<$q+1]",">$q+1]&&$q]>$q+2]&&\$i<\@F"if eval"$q-1]-$q+1]||$q]>$q+1]";$\.=$".sum@F[$p..$i];($p=++$i)<@F&&redo}{

Try it online!

Source Link
Xcali
  • 16.2k
  • 2
  • 15
  • 39

Perl 5 -ap, 156 bytes

for(;$i<@F;$p=++$i){if($F[$i-1]-$F[$i+1]||$F[$i]>$F[$i+1]){$i++while$F[$i]<$F[$i+1];$i++while$F[$i]>$F[$i+1]&&$i<@F&&$F[$i]>$F[$i+2]}$\.=$".sum@F[$p..$i]}}{

Try it online!