def longest_palindrome s s.size.downto(0) do |i| 0.upto(s.size-i) do |j| x = s[j,i] return x if x.reverse == x end end end puts longest_palindrome $_ while gets