JS4 [프로그래머스] lv3 최고의 집합 https://school.programmers.co.kr/learn/courses/30/lessons/12938 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr function solution(n, s) { const set = new Array(n).fill(Math.floor(s/n)); const rm = s%n; if(n > s) return [-1]; for(let i = n-rm; i < n; i++) { set[i] += 1; } return set; } lv3 치고 수상할 정도로 쉬운 문제였다. 최고의 집합은 각각의 원소크기의 차이가 가장 .. 2023. 3. 5. Array.prototype.map 화살표 함수 Object return 할 때 소괄호()로 감싸는 이유 onSnapshot(collection(dbService, "temp"), (snapshot) => { const newArray = snapshot.docs.map((doc) => ({ id: doc.id, ...doc.data(), })); firestore로 onSnapshot 함수를 사용할 때 map으로 순회하면서 newArray에 object를 추가하였다. 이 때 map에 화살표 callback함수를 전달 하였는데 object를 return하기 때문에 (doc) => ({ id: doc.id, ...doc.data(), }) 이렇게 callback함수를 전달했는데 이 때 갑자기 object를 감싸는 소괄호의 정체가 궁금했다. 찾아보니 원래 화살표 callback 함수 뒤에 {}가 나오면 retu.. 2023. 3. 3. [프로그래머스] lv3 셔틀버스 https://school.programmers.co.kr/learn/courses/30/lessons/17678 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 구현 문제였다. 1. 셔틀 버스 운행시간을 key로 가지는 map을 만들어주었다. map의 경우 object형과 다르게 숫자를 key로 설정하는것이 가능하다. 그리고 각 key의 value는 빈배열로 설정하였다. 2. tt(timetable)의 원소들을 모두 (시 * 60 + 분)하여 숫자로 치환한 다음 오름차순 정렬을 한다. 3. tt을 순회하면서 tt의 원소 e마다 map의 [key, valu.. 2023. 2. 21. [프로그래머스] lv2 이모티콘 할인 행사 function solution(users, emoticons) { const ul = users.length; const el = emoticons.length; const dRate = []; let maxE = 0, ansM = 0; const calc = () => { let e = 0, m = 0; users.forEach(user => { let tmp = 0; for(let i = 0; i = user[0]) { tmp += emoticons[i] * (100 - dRate[i]) / 100; } if(tmp >= user[1]) { e++; tmp = 0; break; } } m += tmp; }) if(e > maxE || (e === max.. 2023. 2. 14. 이전 1 다음