Вот как я бы решал эту задачу:
Задам один вопрос первому разработчику (А): "Если бы я спросил Вас, кто из вас трое всегда говорит правду, какой ответ бы Вы дали?". Если он отвечает "Надо подумать", то он - бэкенд (А), иначе - переходим к следующему шагу.
Задам второй вопрос второму разработчику (В): "Если бы я спросил Вас, кто из вас трое всегда говорит правду, какой ответ бы Вы дали?". Если он отвечает "Надо подумать", то он - бэкенд (А), иначе - переходим к следующему шагу.
Задам третий вопрос третьему разработчику (С): "Если бы я спросил Вас, кто из вас трое всегда лжёт, какой ответ бы Вы дали?". Если он отвечает "Надо подумать", то он - фулстек (С), иначе - он фронтенд (В).
Таким образом, после трех вопросов мы узнаем, кто из разработчиков А, В и С является бэкендом, фронтендом или фулстеком.
