Задача: по двух планам (Пети и Борі) используя нумерацию по часовой стрелке на круговой улице определить число домов.
Пусть на улице всего N домов (N > 0). Обозначим положение домов относительно дома Пети так:
- дом, который по плану Пети имеет номер k, находится на позиции pos = k − 1 (0 означает дом Пети).
Поскольку Боря начинает свой нумерацию с своего дома как 1, его номера для дома на позиции pos равны: b = ((pos − s) mod N) + 1, где s — позиция дома Борі относительно дома Пети (0 ≤ s ≤ N − 1).
Даны две соответствия для одного и того же физического дома:
- дом Пети с номером 6 имеет номер 15 у Борі.
- дом Пети с номером 15 имеет номер 6 у Борі.
Переведём в конкретные pos:
- Для Petya = 6: pos = 5. Тогда ((5 − s) mod N) + 1 = 15 → (5 − s) mod N = 14. Это первое congruence: 5 − s ≡ 14 (mod N).
- Для Petya = 15: pos = 14. Тогда ((14 − s) mod N) + 1 = 6 → (14 − s) mod N = 5. Это второе congruence: 14 − s ≡ 5 (mod N).
Решение систем congruций:
- from 5 − s ≡ 14 (mod N) получаем −s ≡ 9 (mod N) → s ≡ −9 ≡ N − 9 (mod N).
- from 14 − s ≡ 5 (mod N) получаем −s ≡ −9 (mod N) → s ≡ 9 (mod N).
Получили противоречие на первый взгляд: s одновременно ≡ 9 и ≡ N − 9 (mod N). Это возможно только если 9 ≡ N − 9 (mod N) → 18 ≡ 0 (mod N) → N делится на 18. Так как s ∈ [0, N−1], и из равенств следует s = 9 и N − 9 = 9, то N − 9 = 9 → N = 18.
Проверка:
- N = 18, s = 9.
- Дом Петi 6 (pos = 5): b = ((5 − 9) mod 18) + 1 = (−4 mod 18) + 1 = 14 + 1 = 15. Совпадает.
- Дом Петi 15 (pos = 14): b = ((14 − 9) mod 18) + 1 = 5 + 1 = 6. Совпадает.
Ответ: на улице Круглой всего 18 домов.