Решение: Жители с одноимёнными внуками
Ниже представлены два фрагмента таблиц из базы данных о жителях микрорайона. Каждая строка таблицы 2 содержит информацию о ребёнке и об одном из его родителей. Информация представлена значением поля ID в соответствующей строке таблицы 1. Определите, у скольких жителей есть хотя бы один внук или одна внучка, с которым (которой) они родились в одном городе. При вычислении ответа учитывайте только информацию из приведённых фрагментов таблиц.
| ID | Фамилия_И.О. | Пол | Место_рождения |
|---|---|---|---|
| 55 | Гурвич М.И. | Ж | Воронеж |
| 56 | Гурвич Н.И. | М | Белгород |
| 57 | Даль Е.И. | Ж | Курск |
| 60 | Даль М.И. | М | Курск |
| 61 | Дейнеко А.Г. | Ж | Воронеж |
| 62 | Дейнеко К.Н. | М | Воронеж |
| 63 | Дейнеко О.Н. | Ж | Самара |
| 66 | Лурье В.И. | Ж | Воронеж |
| 68 | Лурье Г.С. | М | Белгород |
| 69 | Лурье С.Н. | М | Белгород |
| 72 | Макаренко А.Т. | М | Курск |
| 74 | Макаренко Е.М. | Ж | Белгород |
| 77 | Макаренко С.Г. | Ж | Самара |
| 82 | Макаренко Т.С. | М | Курск |
В таблице 2 приведены пары ID_Родителя и ID_Ребёнка: (55, 56), (66, 61), (68, 61), (61, 62), (61, 63), (55, 66), (69, 68), (77, 72), (82, 72), (57, 74), (60, 74), (66, 77), (68, 77), (74, 82).
Решение по шагам
5 шаговПо таблице 2 строим цепочки из двух поколений и для каждой цепочки сравниваем места рождения первого и третьего человека.
Житель с ID 55 является родителем жителя 66, который является родителем жителя 61. Жители 55 и 61 родились в Воронеже.
Житель с ID 66 является родителем жителя 61, который является родителем жителей 62 и 63. С жителем 62 совпадает место рождения: Воронеж.
Житель с ID 57 является родителем жителя 74, который является родителем жителя 82. Жители 57 и 82 родились в Курске.
Житель с ID 60 также является родителем жителя 74, а тот — родителем жителя 82. Жители 60 и 82 родились в Курске.
Где здесь ошибаются
Считать всех дедушек и бабушек, не проверяя совпадение места рождения.
Считать совпадение места рождения родителя и ребёнка вместо дедушки или бабушки и внука.
Учитывать людей, для которых цепочка из двух родительских связей отсутствует в приведённых фрагментах.