1. Вылет из Санкт-Петербурга: 12:00.
2. Прибытие в Екатеринбург: 12:00 + 4 часа = 16:00 по времени Санкт-Петербурга. Разница во времени между Санкт-Петербургом и Екатеринбургом составляет +2 часа. Значит, в Екатеринбурге в момент прилета было 16:00 + 2 часа = 18:00.
3. Пересадка в Екатеринбурге: 1 час. Время вылета из Екатеринбурга: 18:00 + 1 час = 19:00 по времени Екатеринбурга.
4. Время полета до Новосибирска: 2 часа. Время прилета в Новосибирск: 19:00 + 2 часа = 21:00 по времени Екатеринбурга. Разница во времени между Екатеринбургом и Новосибирском составляет +1 час. Значит, в Новосибирске в момент прилета было 21:00 + 1 час = 22:00.
Ответ: 22:00