Цитата из: Tan Xagen on 14-11-2002, 14:02:39
"Вадим изучает китайский, Сергей не изучает китайский, а Михаил не изучает арабский". Впоследствии выяснилось, что в этом ответе только одно утверждение верно, а два других ложны. Какой язык изучает каждый из молодых людей?
Итак, имеем 3 изначальных утверждения:
А - Вадим изучает китайский;
В - Сергей не изучает китайский;
С - Михаил не изучает арабский.
Верные утверждения будем обозначать единичкой, неверные - ноликом (напр.: А0, С1 и пр.).
Утверждения, противоположные изначальным, обозначаем знаком минус (-А, -В и пр.). При этом Если утверждение неверно, то, следовательно, верно противоположное ему утверждение (т. е. если А0, то -А1). В самом деле, если неверно утверждение "Михаил не изучает арабский", то противоположное утверждение ("Михаил изучает арабский") будет верно, и наоборот.
Поскольку в наборе из трех утверждений верно только одно, то мы можем иметь только три ситуации:
1) [А1, В0, С0]. Или, что тоже самое, [А1, -В1, -С1]. Сие означает, что верными должны быть одновременно утверждения "Вадим изучает китайский" и "Сергей изучает китайский", что невозможно по условиям задачи. Так что этот вариант мы отметаем.
2) [А0, В1, С0], что равнозначно набору утверждений [-А1, В1, -С1]. А это, в свою очередь, приводит к необходимости одновременной верности утверждений "Вадим не изучает китайский", "Сергей не изучает китайский", "Михаил изучает арабский". Но если ни Вадим, ни Сергей не изучают китайский, то его должен изучать Михаил. Поскольку Михаил не может изучать _и_ китайский, _и_ арабский, снова получаем противоречие, соответственно, отметаем и это вариант. Остается последний, правильность которого, тем не менее, надо проверить.
3) [А0, В0, С1] или, что то же самое, [-А1, -В1, С1]. Что в переводе на человеческий дает набор из трех утверждений "Вадим не изучает китайский", "Сергей изучает китайский", "Михаил не изучает арабский". Как легко видеть, в таком наборе утверждений противоречия нет. В самом деле, если Сергей изучает китайский, то Михаил не может изучать китайский. Михаил также не изучает арабский, следовательно, Михаил изучает японский. Остаются Вадим и арабский язык, что не противоречит утвержденю "Вадим не изучает китайский".
Получаем ответ:
Вадим - арабский,
Сергей - китайский,
Михаил - японский.
Что и требовалось найти.
P.S. Хотя в условии задачи прямо не указано, тем не менее я предполагал, что трое человек изучают три языка, при этом каждый из них изучает только один язык, каждый язык изучается одним из них, и никакие два человека не изучают один и тот же язык. Без этих допущений задача теряет смысл, ИМХО.
P.P.S. Для трех человек и трех языков можно просто перебрать варианты. А вот интересно, есть ли какой-либо метод, которй позволяет решить аналогичную задачу для любого n без тупого перебора?
P.P.P.S. Задачи у меня нет, поэтому спросите кто-нибудь еще, плз..