Consider P1(a, b) and P2(a, b) to be two points on a 2D plane.
- a happens to equal the minimum value in Northern Latitude (LAT_N in STATION).
- b happens to equal the minimum value in Western Longitude (LONG_W in STATION).
- c happens to equal the maximum value in Northern Latitude (LAT_N in STATION).
- d happens to equal the maximum value in Western Longitude (LONG_W in STATION).
Query the Manhattan Distance between points P1 and P2 and round it to a scale of decimal places.
P1(a, b)와 P2(a, b) 두 점 사이의 거리를 구하세요
a는 위도 최소값 입니다.
b는 경도 최소값 입니다.
c는 위도 최대값 입니다.
d는 경도 최대값 입니다.
맨하탄 거리를 구하기를 쿼리해라. 값은 소수점 4자이하 까지 반올림하세요.
풀기전
이 문제를 풀려면 맨하탄 거리가 뭔지 이걸 어떻게 구하는지 알아야 합니다.
맨해튼 거리는 두 점 사이의 거리를 측정하는 방법 중 하나로, 택시 거리(Taxicab geometry)라고도 불립니다. 실제 도시 맨해튼의 격자형 도로 구조에서 택시가 움직이는 방식에서 유래했습니다.
2D 평면에서 두 점 (x₁, y₁)과 (x₂, y₂) 사이의 맨해튼 거리는 다음과 같이 계산합니다: |x₁ - x₂| + |y₁ - y₂|
이 문제에서는 두 점 P₁(a,b)와 P₂(c,d) 사이의 맨해튼 거리를 구하라는 의미이므로, |a - c| + |b - d|를 계산해야 합니다. 여기서 a, b, c, d는 특정 데이터베이스(STATION)의 위도와 경도의 최소값과 최대값으로 정의되어 있습니다.
클로드 도움을 썼습니다.
정답쿼리
SELECT ROUND(ABS(MIN(LAT_N) - MAX(LAT_N)) + ABS(MIN(LONG_W) - MAX(LONG_W)), 4)
FROM STATION
크게 어렵지 않다. 다만 ABS로 처음 절대값을 써보긴 해봤다.
'MYSQL > HakerRank_Medium' 카테고리의 다른 글
Weather Observation Station 20(중앙값 구하기) (0) | 2025.04.16 |
---|---|
Weather Observation Station 19, 유클리드 거리 구하기 (0) | 2025.04.16 |
New Companies (0) | 2025.04.15 |
Binary Tree Nodes (0) | 2025.04.14 |
The PADS (0) | 2025.04.14 |