🎈 내가 생각한 방법
1. 반복문을 돌려 모든 수를 곱한 결과값을 배열에 담는다.
2. 그 중 가장 큰 수를 반환한다.
그런데 조금 더 생각해보니, 처음부터 가장 큰 값과 2번째로 큰 값을 구해서 곱하주면 되지 않을까? 하는 생각이..!!
그래서 코드는
1. 매개변수 배열에서 가장 큰 수와 두 번째로 큰 수를 구한다.
2. 곱한 값을 반환한다.
이렇게 작성해 보도록 하겠다.
그런데 두번째로 큰 값은 어떻게 구해야 하는걸까?
1. 배열을 가장 큰 순서대로 정렬한다.
2. 0번째는 가장 큰 수, 1번째는 두 번째로 큰 수이다.
🎈 배열의 메서드 sort() 로 오름차순, 내림차순
- 오름차순
let arr = [ 3, 4, 2, 1, 5 ];
let 오름차순 = arr.sort((a,b) => b - a );
// [ 5, 4, 3, 2, 1 ]
- 내림차순
let arr = [ 3, 4, 2, 1, 5 ];
let 내림차순 = arr.sort((a,b) => b - a );
// [ 1, 2, 3, 4, 5 ]
'코딩테스트' 카테고리의 다른 글
코딩테스트 풀이 - 자릿수 더하기 | 문자 -> 숫자, 숫자 -> 문자로 형 변환, 전개구문 spread syntax (1) | 2023.10.26 |
---|---|
코딩테스트 풀이 - 삼각형의 완성조건 (1) | sort 로 내림차순 만들기 (0) | 2023.10.25 |
코딩테스트 풀이 - 짝수 홀수 개수 | forEach문, 삼항연산자 (0) | 2023.10.23 |
코딩테스트 풀이 - 배열의 유사도 | for 문, filter 사용해서 문제풀기 (0) | 2023.10.23 |
코딩테스트 풀이 - 아이스 아메리카노 (0) | 2023.10.23 |