[알고리즘] 기초 문제 풀이 - 삼각형 판별하기
인프런 자바스크립트 알고리즘 문제풀이
삼각형 판별하기
길이가 서로 다른 A, B, C 세 개의 막대 길이가 주어지면 이 세 막대로 삼각형을 만들 수 있
으면 “YES"를 출력하고, 만들 수 없으면 ”NO"를 출력한다.
▣ 입력설명
첫 번째 줄에 100이하의 서로 다른 A, B, C 막대의 길이가 주어진다.
▣ 출력설명
첫 번째 줄에 “YES", "NO"를 출력한다.
▣ 입력예제 1
6 7 11
▣ 출력예제 1
YES
일단 삼각형의 결정조건에 대해 알아야한다. 보통 문제에 다 써있긴하다... 여튼 문제를 풀기위해 까먹은 삼각형의 결정조건을 검색하였고 세 변의 길이를 알 때, 가장 긴 변의 길이가 다른 두 변의 길이의 합보다 크거나 같으면 삼각형을 그릴 수 없다고 한다. 따라서 가장 긴 변 max
가 다른 두 변의 길이의 합보다 작아야 YES
로 답이 출력된다.
내 풀이
function solution(a, b, c) {
let answer = "YES";
const total = a + b + c;
let max = a;
if (a < b) max = b;
else max = a;
if (c > max) max = c;
total - max > max ? (answer = "YES") : (answer = "NO");
return answer;
}
최댓값 max
를 우선 구한 뒤에 세 변의 합에서 max
를 빼보고 그 값이 max
보다 크면 삼각형이 성립, 그렇지 않으면 성립되지 않게 삼항연산자로 작성하였다.
강사님의 풀이
function solution(a, b, c) {
let answer="YES", max;
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;
}
Author And Source
이 문제에 관하여([알고리즘] 기초 문제 풀이 - 삼각형 판별하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@shinwonse/알고리즘-기초-문제-풀이-삼각형-판별하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)