Middle — Senior
Kako efikasno proveriti prisustvo para ogledalnih tačaka sa suprotnim x?
sobes.tech АИ
Одговор од АИ
Za efikasnu proveru prisustva ogledalnog para tačaka sa suprotnim vrednostima x, možete koristiti strukturu podataka za brzu pretragu — na primer, skup (set).
Algoritam:
- Postavite sve tačke u skup radi O(1) pretrage.
- Za svaku tačku (x, y), proverite da li u skupu postoji tačka (-x, y).
Ako se nađe takva tačka, to znači da postoji ogledalni par duž ose Y.
Primer u Pythonu:
points = [(1, 2), (-1, 2), (3, 4), (5, 6)]
point_set = set(points)
for x, y in points:
if (-x, y) in point_set:
print(f"Nađen ogledalni par: ({x}, {y}) i ({-x}, {y})")
Ovaj pristup radi u O(n), gde je n broj tačaka, i efikasan je za velike skupove podataka.