본문 바로가기
Algorithm

[알고리즘] 삼각형 판별하기

by Judy 2022. 1. 3.
문제
길이가 서로 다른 A, B, C 세 개의 막대 길이가 주어지면, 이 세 막대로 삼각형을 만들 수 있으면 "Yes"를 출력하고, 만들 수 없으면 "No"를 출력한다.

입력설명
첫 번째 줄에 100 이하의 서로 다른 A, B, C 막대의 길이가 주어진다.

 

출력설명

첫 번째 줄에 "Yes", "No"를 출력한다.

 

입력예제

6, 7, 11

출력예제

Yes

해결

function solution(a, b, c) {
  let answer;
  let max;
  let sum = a + b + c; // 세 막대 길이 총 합
  
  if(a > b) {
    max = a;
  } else {
    max = b;
  }
  
  if(c > max) {
    max = c;
  }
  
  // 가장 길이가 긴 막대를 뺀다.
  if((sum - max) <= max) {
    answer = "No";
  } else {
    answer = "Yes";
  }

  return answer;
}

solution(6,7,11);

 

해결풀이

핵심

1. 삼각형을 만들려면, a + b 의 합이 c보다 커야 삼각형이 만들어진다.

그럼 이 전에 배웠던 걸 토대로 최대값을 찾아본다.

 

max 값(최대값)은 11이 됩니다.

 

sum = 6 + 7을 합하여 max와 sum을 비교한다.

결과값으로 나뉠 수 있다.

결과로 삼각형이 만들 수 있으므로, Yes가 됩니다.

'Algorithm' 카테고리의 다른 글

[알고리즘] 홀수  (0) 2022.01.08
[알고리즘] 최솟값 구하기  (0) 2022.01.06
[알고리즘] 1부터 N까지 합 출력하기  (0) 2022.01.06
[알고리즘] 연필 개수  (0) 2022.01.05
[알고리즘] 1. 세 수 중 최솟값  (0) 2022.01.02