인프런 커뮤니티 질문&답변
이렇게했는데 no가 나와요..
작성
·
260
1
function solution(a, b, c) {
let max;
let total = a + b + c;
let shortSum = total - max
if (a < b) max = b
else max = a;
if (c > max) max = c
if (shortSum > max) {
return 'YES'
} else {
return 'NO'
}
}
console.log(solution(17, 10, 9))
맞는 것 같은데.. NO만 나오는 이유를모르겠어요
가장긴 막대 - 나머지막대의합이 더크면 YES인데..
퀴즈
46%나 틀려요. 한번 도전해보세요!
세 수 중 최솟값을 찾을 때, if 문만 사용한다면 어떤 방식으로 비교하는 것이 일반적인가요?
세 수를 한 번에 비교하여 가장 작은 수를 바로 찾습니다.
두 수의 최솟값을 먼저 찾고, 그 결과와 나머지 한 수를 비교합니다.
가장 큰 수를 먼저 찾은 후, 남은 두 수 중 작은 값을 찾습니다.
모든 가능한 쌍을 비교하여 가장 작은 값을 찾습니다.
답변 2
3
let shortSum = total - max
max 값이 할당되기 전이라 현재 값이 undefined인데,
할당되기 전의 값을 연산되게 하셔서 shortSum이 NaN으로 뜹니다.
해당 구문을 max값을 할당한 이후에 받겠금 바꿔서 넣으시면 원하시는 결과 값을 얻으실 수 있습니다.
0





