n = gets.to_i b = gets.split.map &:to_i a = n.times.select { |i| i == 0 || b[i - 1] != b[i] }.map { |i| b[i] } n = a.size if a.uniq.size == n puts 0 elsif a.uniq.size == n - 1 && a.first == a.last puts 1 else puts -1 end