인프런 커뮤니티 질문&답변

wjdgksak님의 프로필 이미지

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

2. 삼각형 판별하기

이렇게했는데 no가 나와요..

21.08.23 15:23 작성

·

149

1

    function solution(abc) {
      let max;
      let total = a + b + c;
      let shortSum = total - max
      if (a < bmax = b
      else max = a;
      if (c > maxmax = c
      if (shortSum > max) {
        return 'YES'
      } else {
        return 'NO'
      }
    }

    console.log(solution(17109))
맞는 것 같은데.. NO만 나오는 이유를모르겠어요
가장긴 막대 - 나머지막대의합이 더크면 YES인데..

답변 2

3

MostOneBrush님의 프로필 이미지

2021. 08. 23. 16:23

 let shortSum = total - max

max 값이 할당되기 전이라 현재 값이 undefined인데,
할당되기 전의 값을 연산되게 하셔서 shortSum이 NaN으로 뜹니다.

해당 구문을 max값을 할당한 이후에 받겠금 바꿔서 넣으시면 원하시는 결과 값을 얻으실 수 있습니다.

0

ding-co님의 프로필 이미지

2021. 08. 28. 22:22

초기에 max 변수를 선언하시고 0으로 초기화 하시거나 shortSum 초기화 구문을 max 값 할당 이후로 위치를 바꾸시면 좋을 것 같아요.

wjdgksak님의 프로필 이미지

작성한 질문수

질문하기