KATA#71

codataffee·2024년 6월 23일
0

CODEKATA

목록 보기
71/114
post-thumbnail

WHAT IS KATA?

KATA는 기술과 기술 향상에 초점을 맞춘 코드 챌린지입니다.
일부는 프로그래밍 기본 사항을 교육하는 반면 다른 일부는 복잡한 문제 해결에 중점을 둡니다.

이 용어는 The Pragmatic Programmer 라는 책의 공동 저자인 Dave Thomas 가
무술에서 일본의 카타 개념을 인정하면서 처음 만들어졌습니다.
Dave의 개념 버전은 코드 카타를 프로그래머가
연습과 반복을 통해 기술을 연마하는 데 도움이 되는 프로그래밍 연습으로 정의합니다.


- SQL


✔️ 문제 #1: Weather Observation Station 18

✔️ 제출 쿼리

✔️ 쿼리 분석

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


✔️ 문제 #2: Weather Observation Station 19

✔️ 제출 쿼리

✔️ 쿼리 분석

SELECT ROUND(SQRT(POWER((A - B), 2) + POWER((C-D), 2)), 4)
FROM ( 
    SELECT MAX(LAT_N)  A
                , MIN(LAT_N)  B
                , MAX(LONG_W)  C
                , MIN(LONG_W)  D 
    FROM STATION
    ) AS  DISTANCE_POINT


✔️ CHECK POINT

  • SQL

    • 맨해튼 거리 :

    • 맨해튼 거리는 두 점 사이의 거리로,
      각 좌표 축을 따라 이동하는 거리의 합으로 계산,
      체스판 위에서 룩이 이동하는 방식과 유사하다.

      두 점 ( P_1(x_1, y_1) )과 ( P_2(x_2, y_2) ) 사이의 맨해튼 거리 :
      D Manhattan​ =
      ∣ x 1​ − x 2​ ∣ + ∣ y 1​ − y 2​ ∣

    • ABS() 절댓값 함수

      # 단순 연산
      SELECT ROUND(
      		 ABS(
               MIN(LAT_N) - MAX(LAT_N)
               ) + 
               ABS(
               MIN(LONG_W) - MAX(LONG_W)
               ), 4)
      FROM STATION
    • 유클리드 거리 :

    • 유클리드 거리는 두 점 사이의 직선 거리를 나타내며,
      피타고라스의 정리를 사용하여 계산한다.

      두 점 ( P_1(x_1, y_1) )과 ( P_2(x_2, y_2) ) 사이의 유클리드 거리 :
      D Euclidean​ =
      ( ( x 1​ − x 2​ ) ** 2 + ( y 1​ − y 2​ ) ** 2 ) ** 0.5

    • SQRT() 제곱근 함수 , POWER() 제곱 함수

      # 단순 연산
      SELECT ROUND(SQRT(POWER((A - B), 2) + POWER((C-D), 2)), 4)
      FROM ( 
            SELECT MAX(LAT_N) A
                 , MIN(LAT_N) B
                 , MAX(LONG_W) C
                 , MIN(LONG_W) D 
            FROM STATION
            ) AS  DISTANCE_POINT

profile
커피 좋아하는 데이터 꿈나무

0개의 댓글

관련 채용 정보