Программа представлена на скрине.
Далее под константой будет пониматься макроопределение (символическая константа)
Были созданы константы для обозначения флагов ингредиентов. Им даны осмысленные названия. Также была создана константа для формирования пустого заказа.
int ingredientsCount(Pizza&); - возвращает количество ингредиентов.
void addCheese(Pizza&); - добавляет в заказ сыр
void removeOnion(Pizza&); - убирает из заказа лук
void togglePineapple(Pizza&); - переключает ананасы
void addOnionIfMushroomsExist(Pizza&); - добавляет лук если есть грибы
N = int(input()) # считываем значение N
max_speed = -1 # начальное значение выбираем так, чтобы оно было меньше любой скорости
is_slow_drivers_seen = False # переменная, показывающая, были ли медленные водители. Изначально - нет
for _ in range(N): # N раз
speed = int(input()) # считываем скорость в переменную speed
max_speed = max(max_speed, speed) # обновляем текущую максимальную скорость
is_slow_drivers_seen = is_slow_drivers_seen or speed < 30 # если медленных водителей до этого не было, проверяем, что текущий водитель медленный
print(max_speed) # выводим максимальную скорость
if is_slow_drivers_seen: # если медленные водители были
print('YES') # выводим YES,
else: # а иначе
print('NO') # NO