작성
·
240
0
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(a, b, c){
let arr = [a,b,c]
let sort = arr.sort((a,b) => a-b);
return sort[0] + sort[1] <= sort[2] ? "NO" : "YES"
}
console.log(solution(13,4, 17));
</script>
</body>
</html>
이런식으로 풀어도 괜찮은가요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
제시해주신 코드는 삼각형을 만들 수 있는지 없는지를 확인하는 조건을 잘 반영하였습니다. 간단하게 설명드린다면, 세 변의 길이를 a
, b
, c
라고 할 때, 가장 긴 변의 길이가 다른 두 변의 길이의 합보다 작거나 같으면 삼각형을 만들 수 없습니다. 이를 코드로 잘 구현하신 것 같습니다.
다만, Array.prototype.sort()
함수는 기본적으로 배열의 요소들을 문자열로 변경한 후 유니코드 포인트 순서대로 정렬하기 때문에, 숫자로 이루어진 배열을 오름차순으로 정렬할 때는 제공해주신 (a, b) => a - b
와 같은 비교 함수를 사용하셔야 합니다. 아주 잘 작성하셨습니다!
프로그래밍을 배우고 계실 때는 여러 해결 방법을 시도해보는 것이 좋으므로, 현재 풀이 방식 외에도 다른 접근 방식을 생각해보실 수 있습다. 예를 들어 Math.min()
함수를 활용하거나, 별도의 정렬 없이 조건문을 통해 직접 판별하는 방법 등도 생각할 수 있을 것입니다.
작성하신 코드는 문제의 요구 사항을 잘 충족하는 것으로 보입니다. 다만, 실제 코딩 테스트 환경에서는 HTML과 같은 형식으로 작성할 필요가 없으며 JavaScript의 함수 부분만 작성하게 될 가능성이 큽니다.