Maximum triangle path sum: Difference between revisions

m
→‎{{header|Sidef}}: minor code simplifications
m (→‎{{header|Sidef}}: replaced operator "..." with "..^")
m (→‎{{header|Sidef}}: minor code simplifications)
Line 1,687:
Iterative solution:
<lang ruby>var sum = [0]
 
 
ARGF.each { |line|
var x = line.words.map{.to_ito_n}
sum = [
x.first + sum.first,
1 ..^ x.len-2end -> map{|i| x[i] + [sum[i-1, i]].max}...,
x.last + sum.last,
]
}
 
 
say sum.max</lang>
 
Recursive solution:
<lang ruby>var triangle = ARGF.slurp.lines.map{.words.map{.to_ito_n}}
 
func max_value(i=0, j=0) is cached {
2,747

edits