Dev Hyeri

◖코딩 테스트◗▬▬▬▬▬▬▬▬▬/해커랭크

[해커랭크Medium] (2024) Weather Observation Station 18,19 (설명/코드/정답)

_hyeri 2024. 2. 15. 18:43

 

 

문제 링크 : 

https://www.hackerrank.com/challenges/weather-observation-station-18/problem

https://www.hackerrank.com/challenges/weather-observation-station-19/problem

 

 

1. 요구 사항 이해

2차원 위의와 위도 경도의 최솟값인 p₁, 최댓값인 p₂인 두 점 사이의 거리를 구하기. 

 

 

2. 설계/검증 

✔️ Manhattan Distance, 맨하튼 거리

p₁( x₁, y₁ ), p₂( x₂, y₂ )일때 | x₁ - x₂ | + | y₁ - y₂ |

 

✔️  Euclidean distance, 유클리드 거리

 

✔️  위도와 경도에 대한 이해(ABS를 안 써도 됨)

✔️  N제곱 POWER() 함수 필요

✔️  루트 씌우는 SQRT()함수 필요

 

 

3. 정상 코드

 Weather Observation Station 18, 기상관측소 18호

SELECT ROUND((MAX(LAT_N)-MIN(LAT_N)) + (MAX(LONG_W)-MIN(LONG_W)), 4) 
FROM STATION

/*실행 결과
259.6859
*/

 

 Weather Observation Station 19, 기상관측소 19호

SELECT ROUND((SQRT(POWER((MAX(LAT_N)-MIN(LAT_N)), 2) + POWER((MAX(LONG_W)-MIN(LONG_W)), 2))), 4)
FROM STATION

/* 실행 결과
184.1616
*/

 

 

4. 추가 정리

출처. https://en.wikipedia.org/wiki/Taxicab_geometry

 

 

 

Manhattan Distance,맨하튼 거리 (빨간색, 파란색, 노란색 선)

(= Taxicab geometry)

두 점 사이의 맨해튼 거리는 각 축 방향으로 수직 및 수평으로 이동하여 도달할 수 있는 최소한의 거리입니다. 

맨해튼 거리는 각 축 방향으로의 차이의 절댓값을 합산한 것입니다.

 

맨해튼 거리는 직각 삼각형의 두 변의 길이 합과 같기 때문에 주로 격자 형태의 구조에서 사용됩니다. 

특히 도시의 블록과 같이 수직 및 수평 이동으로 이동해야 하는 상황을 모델링하는 데 유용합니다.

 

출처. https://en.wikipedia.org/wiki/Taxicab_geometry

 

 

Euclidean distance, 유클리드 거리 (초록색 선)

두 점 사이의 유클리드 거리는 두 점을 직선으로 연결한 선분의 길이입니다. 

이것은 피타고라스의 정리를 사용하여 계산됩니다.

 

유클리드 거리는 공간에서의 직선거리를 나타내므로, 점과 점 사이의 실제 거리를 측정하는 데 자주 사용됩니다. 

연속적인 공간에서의 거리를 다루는 경우에 적합합니다.

 

 

출처. https://en.wikipedia.org/wiki/Euclidean_distance