Для решения подобных задач с использованием двоичных матриц, нам нужно представить каждое возможное сочетание как элемент матрицы и воспользоваться данными из условий задач для отбрасывания неверных сочетаний. Давайте рассмотрим каждую задачу поочередно.
Задача 1
Условие: Имена Иванова, Петрова, Семенова и Николаева — Иван, Петр, Семен и Николай, причем только у Николаева имя совпадает с фамилией, т.е. его зовут Николай. Семена зовут не Петром. Определить фамилию и имя каждого человека.
- Создаем матрицу связи фамилий и имен:
Иван Петр Семен Николай
Иванов
Петров
Семенов
Николаев
- Заполняем известные данные:
Иван Петр Семен Николай
Иванов ? ? ? ?
Петров ? ? ? ?
Семенов ? ? ? ?
Николаев 0 0 0 1
- Исключаем неверные варианты:
Иван Петр Семен Николай
Иванов ? ? ? ?
Петров ? ? ? ?
Семенов ? 0 ? ?
Николаев 0 0 0 1
- Заполняем оставшиеся данные:
- У нас остались три имени (Иван, Петр, Семен) и три фамилии (Иванов, Петров, Семенов)
- Семена зовут не Петр, значит, Семенов может быть либо Иваном, либо Семеном.
- Если Семенов = Семен, то Иванов и Петров могут быть только Иван и Петр.
Иван Петр Семен Николай
Иванов 1 0 0 0
Петров 0 1 0 0
Семенов 0 0 1 0
Николаев 0 0 0 1
Решение:
- Иванов = Иван
- Петров = Петр
- Семенов = Семен
- Николаев = Николай
Задача 2
Условие: В Норильске, Москве, Ростове и Пятигорске живут четыре супружеские пары, причем в каждом городе только одна пара. Имена этих супругов: Антон, Борис, Давид, Григорий, Ольга, Мария, Светлана, Екатерина. Антон живет в Норильске, Борис и Ольга — супруги. Григорий и Светлана не живут в одном городе, Мария живет в Москве, Светлана — ростовчанка. Кто на ком женат и кто где живет?
- Создаем таблицу связи городов и пар:
Город Муж Жена
Норильск
Москва
Ростов
Пятигорск
- Заполняем известные данные:
Город Муж Жена
Норильск Антон ?
Москва ? ?
Ростов ? ?
Пятигорск ? ?
Город Муж Жена
Норильск Антон ?
Москва ? ?
Ростов ? ?
Пятигорск Борис Ольга
Город Муж Жена
Норильск Антон ?
Москва ? Мария
Ростов ? ?
Пятигорск Борис Ольга
Город Муж Жена
Норильск Антон ?
Москва ? Мария
Ростов ? Светлана
Пятигорск Борис Ольга
- Григорий и Светлана не живут в одном городе.
- Определяем оставшиеся данные:
- В Норильске с Антоном должна жить одна из оставшихся женщин (Екатерина или Мария).
Город Муж Жена
Норильск Антон Екатерина
Москва Давид Мария
Ростов Григорий Светлана
Пятигорск Борис Ольга
Решение:
- Норильск: Антон и Екатерина
- Москва: Давид и Мария
- Ростов: Григорий и Светлана
- Пятигорск: Борис и Ольга
Таким образом, все условия задач выполнены, и мы нашли фамилии и имена для первой задачи, а также определили, кто на ком женат и где живет для второй задачи.