세 수 중 최솟값(정렬 이용x)
나의 풀이 1
function solution(a, b, c) { let answer; if (a > b && a > c) { if (b > c) { answer = c; } else { answer = b; } } else if (b > a && b > c) { if (a > c) { answer = c; } else { answer = a; } } else { if (a > b) { answer = b; } else { answer = a; } } return answer; } console.log(solution(2, 5, 1));
원하는대로 잘 동작하는 코드이다.
하지만 '가장 작은 수'를 찾는건데, 1, 2번째 수도 구별하도록 하여 좋지 않은 코드이다.
나의 풀이 2
function solution(a, b, c) { let answer; if (a < b && a < c) { answer = a; } else if (b < a && b < c) { answer = b; } else if (c < a && c < b) { answer = c; } else { answer = a; } return answer; } console.log(solution(2, 5, 1));
위 코드보단 간결해졌다.
그저 한 문자가 다른 문자들보다 작기만하면 최솟값이도록 설정했다.
강사 풀이
function solution(a, b, c) { let answer; if (a < b) { answer = a; } else { answer = b; } if (c < answer) { answer = c; } return answer; } console.log(solution(2, 5, 1));
먼저 1, 2번째 매개변수를 비교해서 최솟값을 구한 뒤,
3번째 매개변수와 비교하는 방법이다.
'코딩테스트 문제풀이 > inflearn' 카테고리의 다른 글
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 6. 홀수 (feat. for...of) (0) | 2022.07.24 |
---|---|
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 5. 최솟값 구하기 (feat. Math, 전개구문/apply) (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 4. 1부터 N까지의 합 (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 3. 연필 개수 (0) | 2022.07.24 |
[인프런] Node.js / 섹션1 - 기본문제 풀이 / 2. 삼각형 판별 (0) | 2022.07.24 |