Guest User

Untitled

a guest
Apr 24th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.77 KB | None | 0 0
  1. def find_longest_sequence(input)
  2. longest_sequence = []
  3.  
  4. input.each_index do |i|
  5. sequence = find_sequence(input[i..-1])
  6. longest_sequence = sequence if sequence.length > longest_sequence.length
  7. end
  8. longest_sequence
  9. end
  10.  
  11. def find_sequence(input)
  12. return [] if input == []
  13.  
  14. sequence = [input.first]
  15. greater = false
  16. input.inject do |last, current|
  17. if greater
  18. if current > last
  19. sequence << current
  20. else
  21. break
  22. end
  23. else
  24. if current < last
  25. sequence << current
  26. else
  27. break
  28. end
  29. end
  30.  
  31. greater = !greater
  32. last = current
  33. end
  34.  
  35. return sequence
  36. end
  37.  
  38.  
  39. input = gets.split[1..-1].map { |x| x.to_i }
  40. p input
  41. puts find_longest_sequence(input).length
Add Comment
Please, Sign In to add comment