728x90
[Javascript] (프로그래머스 level 2) 기능 개발
💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다.
내 풀이
function solution(progresses, speeds) {
// 100 되면 pop
// 하루 한번 speed 만큼 progresses 올라감
// 배포마다 몇개가 배포되는지 return
const arr = progresses.map((x, i) => Math.ceil((100 - x)/speeds[i]));
const result = [];
let count = 1;
let maxDay = 0;
console.log(arr)
arr.forEach((x, i) => {
if (x > maxDay) {
maxDay = x;
}
if (i === arr.length - 1) {
result.push(count);
} else if (arr[i + 1] > maxDay) {
result.push(count);
count = 1;
maxDay = 0;
} else {
count++;
}
})
return result
}
- 고득점 킷에서 한번 풀어본 경험이 있어서 progresses배열을 speeds 배열로 나누는건 직접 생각한 아이디어는 아닙니다.
- arr.forEach() 사용한 부분은 직접했는데, 포문 돌리나 forEach돌리나 사실 로직은 비슷할거라 독특한 아이디어는 없을겁니다.
- 이전에 풀었을 때와 다른점이 있다면, 그땐 레벨1 뒷쪽 문제도 어려워 하던 시절이라 이 문제도 엄청나게 어렵게 느껴졌는데요… 이젠 10분 내외로 구현되네요. 2주만에 폭풍 성장 👍👍
'Coding Test > JavaScript' 카테고리의 다른 글
[Javascript] (백준 11170) 0의 개수 (0) | 2022.07.09 |
---|---|
[Javascript] (백준 1969) DNA (0) | 2022.07.09 |
[Javascript] (프로그래머스 level 1) 약수의 개수와 덧셈 (0) | 2022.07.08 |
[Javascript] (프로그래머스 level 1) 로또의 최고 순위와 최저 순위 (0) | 2022.07.06 |
[Javascript] (프로그래머스 level 2) 숫자의 표현 (0) | 2022.07.02 |
[Javascript] (프로그래머스 level 2) 이진 변환 반복하기 (0) | 2022.07.01 |
[Javascript] (프로그래머스 level 2) n진수 게임 (0) | 2022.07.01 |
[Javascript] (프로그래머스 level 2) 다음 큰 숫자 (0) | 2022.07.01 |
댓글