Spaces:
Sleeping
Sleeping
| """ | |
| ์ง๋ฆฌ ๊ณ์ฐ ์ ํธ๋ฆฌํฐ | |
| Haversine ๊ณต์ ๊ธฐ๋ฐ ์ขํ ๊ฐ ์ง์ ๊ฑฐ๋ฆฌ ๊ณ์ฐ. | |
| ํ๋ก์ ํธ ์ ์ฒด์์ ๋จ์ผ ๊ตฌํ์ ๊ณต์ ํฉ๋๋ค. | |
| """ | |
| from math import radians, sin, cos, sqrt, atan2 | |
| EARTH_RADIUS_KM = 6371.0 | |
| def haversine(lat1: float, lng1: float, lat2: float, lng2: float) -> float: | |
| """๋ ์ขํ ๊ฐ ์ง์ ๊ฑฐ๋ฆฌ (km) - Haversine ๊ณต์""" | |
| d_lat = radians(lat2 - lat1) | |
| d_lng = radians(lng2 - lng1) | |
| a = sin(d_lat / 2) ** 2 + cos(radians(lat1)) * cos(radians(lat2)) * sin(d_lng / 2) ** 2 | |
| return EARTH_RADIUS_KM * 2 * atan2(sqrt(a), sqrt(1 - a)) | |