728x90
https://programmers.co.kr/learn/courses/30/lessons/68644
function solution(numbers) {
// 정답을 받을 코드
var answer = [];
let newArry = numbers.sort((a, b)=> a - b);
// 받아온 배열을 돌면서 더해준다
for(let i=0; i<newArry.length; ++i){
// arr[i] + arr[i+1] 이되야하니 아래와 같은 구조
for(let j=i+1; j<newArry.length; ++j){
// 더해진 값을 일단 모두 push 한다
answer.push(newArry[i] + newArry[j])
}
}
// 중복값 거르기
// Set을 이용해서 중복값이 없는 객체생성
const dupli = new Set(answer)
// 객체를 배열로 변환
answer = [...dupli];
// 다시 재정렬
answer.sort((a, b)=> a - b);
// 변수
return answer;
}
Set을 이용해서 중복값을 제거한거외엔 새롭게 써본게 없다.
정답코드 역시 Set을 사용했지만, Set을 줄여쓸수 있는걸 알았다.
function solution(numbers) {
const temp = []
for (let i = 0; i < numbers.length; i++) {
for (let j = i + 1; j < numbers.length; j++) {
temp.push(numbers[i] + numbers[j])
}
}
const answer = [...new Set(temp)]
return answer.sort((a, b) => a - b)
}
728x90
'알고리즘' 카테고리의 다른 글
프로그래머스 Level 1 - 숫자 문자열과 영단어 (0) | 2022.05.26 |
---|---|
프로그래머스 Level 1 - 같은 숫자는 싫어(JavaScript) (0) | 2022.05.16 |
프로그래머스 Level 1 - 3진법 뒤집기(JavaScript) (0) | 2022.05.15 |
(실패)프로그래머스 Level 1 - 이상한 문자 만들기 (JavaScript) (0) | 2022.05.15 |
프로그래머스 Level 1 - 자릿수 더하기 (JavaScript) (0) | 2022.05.15 |