나의 풀이
function solution(a, b, c) {
let answer = "YES";
if (
(a > b && a > c && a >= b + c) ||
(b > c && b > a && b >= a + c) ||
(c > a && c > b && c >= a + b)
) {
answer = "NO";
}
return answer;
}
console.log(solution(6, 7, 11));
두 변의 길이의 합이 가장 긴 변의 길이보다 작아야지 삼각형이다.
강사 풀이
function solution(a, b, c) {
let answer = "YES",
max;
let sum = a + b + c;
if (a > b) {
max = a;
} else {
max = b;
}
if (c > max) {
max = c;
}
if (max >= sum - max) {
answer = "NO";
}
return answer;
}
console.log(solution(6, 7, 11));
앞서 세 수 중 최솟값 문제처럼
1, 2번째 매개변수를 비교해 가장 큰 변의 길이를 설정하였고, 3번째 매개변수와 비교하여 최종적으로 설정하였다.
max가 sum-max(남은 변의 길이 합)보다 크면 삼각형이 아님을 이용했다
'코딩테스트 문제풀이 > inflearn' 카테고리의 다른 글
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 6. 홀수 (feat. for...of) (0) | 2022.07.24 |
---|---|
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 5. 최솟값 구하기 (feat. Math, 전개구문/apply) (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 4. 1부터 N까지의 합 (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 3. 연필 개수 (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 1. 세 수 중 최솟값 (0) | 2022.07.24 |