반응형
*MySQL 버전, 집계 함수(Aggregation) 문제입니다.
해커랭크 Weather Observation Station 19 문제, 샘플, 설명
- LAT_N 최솟값, 최댓값 = a, b
- LONG_W 최솟값, 최댓값 = c, d
- P1(a, c), P2(b, d)의 유클리드 거리(2D) 식 세우기
- 소수 4자리(4 decimal digits) 표기
대충 두 점 거리를 유클리드 거리(2D)식으로 구하고 산출물은 소수 4자리로 나타내라는 말.
해커랭크 Weather Observation Station 19 답
- 유클리드 거리 식에 따라 SQRT(), POW() 사용
- 소수 4자리 표기를 위해 ROUND 사용
#실수 방지, 헷갈릴 때는 주석으로 미리 정리하기
-- a = MIN(LAT_N)
-- b = MAX(LAT_N)
-- c = MIN(LONG_W)
-- d = MAX(LAT_N)
-- P1(a,c) a=p1 c=p2
-- P2(b,d) b=q1 d=q2
SELECT ROUND(SQRT(POW(MAX(LAT_N)-MIN(LAT_N), 2) + POW(MAX(LAT_N)-MIN(LONG_W), 2)), 4)
FROM STATION;
추가 정리
- SQRT(): 루트
- POWER()=POW(): ^n, 거듭제곱
x의 y제곱
SELECT POW(x, y);
> x^y
SELECT POW(2, 3);
> 8
중고등학생 때 배운 피타고라스 정리를 생각하면 됩니다.
해당 계산식은 아래 위키를 참고하면 되며, 유클리드 거리 정리 글이 있어서 추천합니다.
*유클리드 거리 reference https://needjarvis.tistory.com/454
유클리디안 거리(Euclidean Distance) 개념과 구현해보기
유클리디안 거리(Euclidean Distance) 혹은 유클리드 거리는 매우 심플하고, 베이직한 값들간의 거리를 구하는 알고리즘이다. 이틀 토대로 값들간의 유사도를 구할 수 있어서 유클리디안 거리로 유사
needjarvis.tistory.com
반응형
'SQL > HackerRank(해커랭크)' 카테고리의 다른 글
HackerRank(해커랭크) MySQL Type of Triangle 문제 답 (1) | 2023.10.11 |
---|---|
HackerRank(해커랭크) MySQL Weather Observation Station 20 문제 답 (1) | 2023.10.09 |
HackerRank(해커랭크) MySQL Average Population of Each Continent 문제 답 (0) | 2023.10.05 |
HackerRank(해커랭크) MySQL Top Earners 문제 답 (0) | 2023.10.04 |
HackerRank(해커랭크) MySQL Weather Observation Station 15 문제 답 (0) | 2023.10.02 |