С ИСПРАВЛЕННЫМ условием задача решается так:
Составляем таблицу, где по вертикали пишем фамилии, а по горизонтали - имена
Андрей Сергей Тимофей Алексей
-----------------------------------------------------------------------------------------
Иванов ----- + ----- -----
Петров ----- ----- ----- +
Карпов ----- ----- + -----
Марков + ----- ----- -----
Из условия а) ставим прочерки: Иванов не Алексей и не Андрей,
Из условия в) ставим прочерки: Карпов не Сергей и не Алексей
Из условия б): Марков не Сергей и не Тимофей
Из условия г) Карпов не Андрей => Карпов это Тимофей
Ставим прочерки по вертикали Тимофея.
Получилось, что Иванов может быть только Сергеем
Ставим прочерки по Сергею.
Из условия г) Петров не Андрей => Андрей это Марков, а Алексей Петров
Итого: Иванов Сергей, Петров Алексей, Карпов Тимофей, Марков Андрей