새로운 블로그로 이전 작업을 진행하고 있어 포스트가 새로 작성되고 있지 않습니다.

빠른 시일 내에 새로운 블로그로 인사드리겠습니다.

새로운 블로그 : https://unho.vercel.app/

본문 바로가기
알고리즘 문제풀이/SQL

[HackerRank] Type of Triangle

by 언호 2021. 12. 16.

문제


풀이 과정

1) 문제 이해 및 접근

테이블에서 각 열이 삼각형 변의 길이에 해당하는데, 이 변의 길이에 따라 어떠한 삼각형이 만들어지는지 문자로 출력해야함

조건에 따라 출력을 해야하므로 CASE WHEN THEN END 사용해야 함

2) 풀이 코드

사용 언어 - Oracle

SELECT CASE
    WHEN A + B <= C OR A + C <= B OR B + C <= A THEN 'Not A Triangle'	-- 삼각형이 아닐때 (삼각형이 아닌 경우를 먼저 필터링) 필요
    WHEN A = B AND B = C THEN 'Equilateral'								-- 모든 변의 길이가 같은 경우
    WHEN A = B OR B = C OR A = C THEN 'Isosceles'						-- 두개의 변의 길이가 같은 경우
    ELSE 'Scalene'														-- 삼격형이지만, 세개의 변의 길이가 모두 다른 경우
    END
FROM TRIANGLES;

결과 및 학습한 내용

1) 어려웠던 내용

  • 조건 설정 순서에 시간 소요
    처음에 삼각형을 판단하는 조건을 마지막에 넣었으나, 특정한 경우에 오류 발생하여
    오류 수정 => 삼각형을 판단하는 조건을 제일 먼저 판별하도록 함

문제 링크

https://www.hackerrank.com/challenges/what-type-of-triangle/problem 

 

Type of Triangle | HackerRank

Query a triangle's type based on its side lengths.

www.hackerrank.com

 

 

※ 오류 및 오타, 다른 의견이 있는 경우 댓글을 남겨주시면 감사하겠습니다

댓글