코딩테스트.js/자바스크립트 알고리즘 문제풀이 입문 (인프런)
1-2. 삼각형 판별하기
Wisdom_1104
2022. 12. 18. 01:40
-코드-
function solution(a, b, c) {
let answer = "Yes";
let sum = a + b + c;
if (a > b) max = a;
else max = b;
if (c > max) max = c;
if (sum - max <= max) answer = "No";
return answer;
}
console.log(solution(6, 7, 11));
-풀이과정-
이 문제를 풀기위해서는 삼각형의 기본 원리를 알아야 함.
삼각형의 두 변의 길이의 합이 한 변의 길이보다 작으면 안 됨.
즉, '두 변의 길이 합 > 제일 긴 한 변'이어야 함.
function solution(a, b, c) { 를 하여
세 수 를 받고
let answer = "Yes"; 를 하여
기본 출력값을 "Yes"로 함.
그럼 이제 "No"의 경우를 출력하기 위해 코드를 작성해야 함.
먼저 max의 경우를 구해야 함.
let sum = a + b + c; 를 하여
sum 이라는 변수는 a+b+c라고 함.
if (a > b) max = a; 를 하여
만약 a가 b보다 크다면 max라는 변수에 a를 넣게 함.
else max = b; 를 하여
반대로 a가 b보다 크지 않다면 max에 b를 넣게 함.
if (c > max) max = c; 를 하여
만약 c가 저장된 max보다 크다면 max에 c를 넣게 함.
이제 max를 구했으니 "No"의 경우를 출력하는 코드를 작성해야 함.
if (sum - max <= max) answer = "No"; 를 하여
만약 a+b+인 sum-max가 max보다 작거나 같다면 answer에 "No"를 넣음.
6, 7, 11이 주어졌으니 11보다 6+7이 더 크므로
"Yes"가 출력됨.