Ответ:

Составим таблицу и последовательно исключим невозможные варианты.

Боря жил в комнате с мальчиком из Кирова. Это разные ребята, и ни один из них не был из Москвы или Санкт-Петербурга. Значит, Боря и мальчик из Кирова — это жители Омска и Кирова соответственно; сам Боря приехал из Омска.

Гриша жил с мальчиком из Москвы, а к ним заходил приятель из Кирова. Это трое разных ребят, поэтому Гриша не из Москвы и не из Кирова. Омск уже принадлежит Боре, значит, Гриша из Санкт-Петербурга.

Остаются Витя и Егор, а также Москва и Киров. Егор и мальчик из Москвы названы как разные ребята, поэтому Егор не из Москвы. Следовательно, Егор из Кирова, а Витя из Москвы.

РебятаМоскваОмскСанкт-ПетербургКировВывод
Боря—+——Омск
Витя+———Москва
Гриша——+—Санкт-Петербург
Егор———+Киров

Ответ: Боря — из Омска, Витя — из Москвы, Гриша — из Санкт-Петербурга, Егор — из Кирова.