Кто фронтендер, а кто бэкендер?

Вы заходите в опенспейс IT-компании «TwoWayLand». В этой компании фронтендеры всегда говорят правду, а бэкендеры всегда лгут. Повстречав троих парней, Сашу, Колю и Диму, вы пытаетесь разобраться, чем они занимаются.

— Дима занимается бэкендом, а я — фронтендер, — сказал Саша. — По крайней мере одно из этих утверждений истинно.

— Саша мог заявить, что я — бэкендер, — сказал Коля.

— Ни Саша, ни Коля фронтендом не занимаются, — заявил Дима.

Вопрос: кто занимается фронтендом, а кто — бэкендом?

Посмотреть решение

Слова Димы проверить проще всего, так что давайте с него и начнем. Дима утверждает, что ни Саша, ни Коля фронтендом не занимаются. Предположим, Дима — сам фронтендер, а значит, говорит правду. Тогда оба — и Саша, и Коля — бэкендеры, а значит, они лгут.

Саша сказал, что по крайней мере одно из двух его утверждений истинно (1. Дима — бэкендер. 2. Сам Саша — фронтендер). Если на самом деле Саша — бэкендер и лжет, тогда ни одно из его утверждений не истинно. И тогда Дима — фронтендер, а Саша — бэкендер. Это вполне вяжется с нашим предположением, что Дима сказал правду.

Коля сказал, что Саша мог назвать его бэкендером. Если Коля — бэкендер, как выплывает из слов Димы, значит, он врет. Т.е. Саша не мог заявить, что Коля — бэкендер (хотя это было бы правдой). Из этого мы можем заключить, что Саша — бэкендер.

Таким образом, Дима — фронтендер, а Саша и Коля — бэкендеры.