코딩테스트/JS 알고리즘 문제(JS)
삼각형 판별하기
판다꼬마
2022. 8. 2. 19:54
728x90
문제
입력
- 첫 번째 줄에 100 이하의 서로 다른 A, B , C 막대의 길이가 주어진다.
출력
- 첫 번째 줄에 "YES", "NO"를 출력한다
입력 예시
6 7 11
출력 예시
YES
풀이 방법
삼각형이 만들어지는 조건은 제일 긴 변을 제외한 나머지 두 변 길이의 합이 제일 긴 변보다 커야 한다는 것이다.
이 조건을 생각해 풀이하였다.
내 코드
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(a, b, c) {
let long;
let short1, short2;
if (a < b) (long = b), (short1 = a), (short2 = c);
else (long = a), (short1 = b), (short2 = c);
if (long < c) (long = c), (short1 = a), (short2 = b);
if (long < short1 + short2) console.log("YES");
else console.log("NO");
}
console.log(solution(6, 7, 11));
</script>
</body>
</html>
Solution
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(a, b, c){
let answer="YES", max;
let tot=a+b+c;
if(a>b) max=a;
else max=b;
if(c>max) max=c;
if(tot-max<=max) answer="NO";
return answer;
}
console.log(solution(13, 33, 17));
</script>
</body>
</html>
느낌점
풀 때 코드가 난잡하고 생각은 하긴 했는데 solution을 보니 정말 간결해서 슬펐다.
728x90