def max(a,b); a > b ? a : b; end N = gets.to_i A = gets.split.map(&:to_i) use = Array.new(N, 0) unuse = Array.new(N, 0) use[0] = 1 unuse[0] = 0 (1 ... N).each do |i| if A[i - 1] == A[i] use[i] = max(unuse[i - 1] + 1, use[i - 1] + 1) unuse[i] = max(use[i - 1], unuse[i - 1]) else use[i] = unuse[i - 1] + 1 unuse[i] = max(use[i - 1], unuse[i - 1]) end end puts max(use[-1], unuse[-1])