[알고리즘] 삼각형 판별하기 - JS
문제 설명
길이가 서로 다른 A
, B
, C
세 개의 막대 길이가 주어지면 이 세 막대로 삼각형을 만들 수 있 으면 “YES”를 출력하고, 만들 수 없으면 ”NO”를 출력한다.
입력설명
첫 번째 줄에 100이하의 서로 다른 A
, B
, C
막대의 길이가 주어진다.
출력설명
첫 번째 줄에 “YES”, “NO”를 출력한다.
입출력 예
입력 예 #1
- 6 7 11
출력 예 #1
- YES
입력 예 #2
- 13 33 17
출력 예 #2
- NO
해설
가장 긴 면의 길이보다 다른 두개의 면을 합친 길이가 더 커야 삼각형을 만들 수 있다.
풀이1
function solution(a, b, c) {
let answer;
const [min1, min2, max] = [a, b, c].sort((a, b) => a - b);
answer = min1 + min2 > max ? 'YES' : 'NO';
return answer;
}
console.log(solution(6, 7, 11));
console.log(solution(13, 33, 17));
풀이2
function solution(a, b, c) {
let answer,
sum = a + b + c,
max = a;
if (max < b) max = b;
if (max < c) max = c;
answer = sum - max > max ? 'YES' : 'NO';
return answer;
}
console.log(solution(6, 7, 11));
console.log(solution(13, 33, 17));
댓글남기기