def remove_consecutive_duplicates(numbers): result = [numbers[0]] max_so_far = numbers[0] for number in numbers[1:]: if number != result[-1]: result.append(number) max_so_far = number elif number == max_so_far: result.append(number) elif number > max_so_far: result.pop() result.append(number) max_so_far = number return result
numbers = [1, 2, 2, 3, 4, 4, 4, 5, 6, 7, 7, 8] result = remove_consecutive_duplicates(numbers) print(result) # Output: [1, 2, 3, 4, 5, 6, 7, 8]