n = int(input()) a = list(map(int, input().split())) # Generate runs runs = [] if not a: print(0) exit() current_val = a[0] current_length = 1 for num in a[1:]: if num == current_val: current_length += 1 else: runs.append(current_length) current_val = num current_length = 1 runs.append(current_length) if len(runs) == 0: print(0) exit() # Dynamic programming prev_take = runs[0] prev_notake = 0 for i in range(1, len(runs)): current_take = prev_notake + runs[i] current_notake = max(prev_take, prev_notake) prev_take, prev_notake = current_take, current_notake print(max(prev_take, prev_notake))