Что не так в этой простой формуле?
Ruby меня пинает уже пол дня, а я так и не могу понять, в чем причина. Задача - найти локальный максимум в массиве чисел. Формула ниже. Помогите по-братски.
m = [1, 12, 3, 33, 3, 4, 2, 4, 6, 7]
p m.select{ |x| ((m[x] > m[x-1]) && (m[x] > m[x+1])) }
Лог ошибок в терминале при вычислении:
comparison of Fixnum with Array failed (ArgumentError)
from rub.rb:2:in `block in <main>'
from rub.rb:2:in `select'
from rub.rb:2:in `<main>'
Источник: Stack Overflow на русском