페블_
반짝이는 시냅스
페블_
전체 방문자
오늘
어제
  • 전체글 보기 (96)
    • QA (0)
    • 프로젝트 회고 (4)
    • 프로젝트 과정 기록 (12)
    • UI 구현 연구일지 (8)
    • Front-end (31)
      • Javascript (7)
      • CSS (10)
      • React (5)
      • Typescript (3)
      • Nextjs (3)
      • 스타일링 라이브러리 (3)
    • Back-end (0)
      • Express (0)
      • DB (0)
    • CS (0)
      • 자료구조 & 알고리즘 (0)
    • CI&CD (1)
    • 툴 사용법 (4)
      • Git (1)
      • Library&패키지 (2)
      • 기타 개발관련 (1)
    • 알고리즘 이론 & 풀이 (36)
      • 백준(BOJ) (14)
      • 프로그래머스 (22)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 파이썬
  • 시리즈_표지
  • TypeScript
  • UI 컴포넌트
  • react
  • 토이프로젝트
  • Python
  • chartjs
  • 알고리즘
  • 백준
  • 생각
  • 캐러셀
  • eslint
  • JS
  • 개발블로그_시작
  • 선형대수학
  • emotion
  • storybook

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
페블_

반짝이는 시냅스

알고리즘 이론 & 풀이/프로그래머스

프로그래머스 Lv.2 | (스택/큐) 기능개발 js

2023. 8. 9. 18:11

문제

https://school.programmers.co.kr/learn/courses/30/lessons/42586?language=javascript 

풀이

큐로 풀었다.

  • 기능개발에 걸리는 기간은 Math.ceil((100 - progresses[0]) / speeds[0])
  • 맨 앞에 있는게 안 나가면 뒤에는 맨 앞 날짜보다 작거나 같은 날짜가 계속 쌓이게 된다.
  • 날짜 배열의 [0]번보다 큰 날짜가 나온다면 그동안의 기능들을 다 배포하게 되는데, 개발한 기능의 개수를 세주고 날짜 배열을 비우고, 새로운 날짜 기준부터 다시 시작한다.
function solution(progresses, speeds) {
    const answer = [];
    let dates = [Math.ceil((100 - progresses[0]) / speeds[0])];
    if(progresses.length === 1) {
        return [1];
    }
    for(let i = 1; i < progresses.length; i++) {
        let date = Math.ceil((100 - progresses[i]) / speeds[i]);
        
        if(dates[0] >= date) {
            dates.push(date);
        } else {
            answer.push(dates.length);
            dates = [date];
        }
        
        if(i === progresses.length - 1 && dates.length > 0) {
            answer.push(dates.length);
        }
    }
    return answer;
}

'알고리즘 이론 & 풀이 > 프로그래머스' 카테고리의 다른 글

프로그래머스 Lv.2 | 괄호 회전하기 js  (0) 2023.08.11
프로그래머스 Lv.2 | 피보나치 수 js  (0) 2023.08.09
프로그래머스 Lv.1 | (스택/큐) 같은 숫자는 싫어 js  (0) 2023.08.09
프로그래머스 Lv.2 | (DFS) 타겟 넘버 js  (0) 2023.08.09
프로그래머스 Lv.1 | (완전탐색) 모의고사 js  (0) 2023.08.09
    '알고리즘 이론 & 풀이/프로그래머스' 카테고리의 다른 글
    • 프로그래머스 Lv.2 | 괄호 회전하기 js
    • 프로그래머스 Lv.2 | 피보나치 수 js
    • 프로그래머스 Lv.1 | (스택/큐) 같은 숫자는 싫어 js
    • 프로그래머스 Lv.2 | (DFS) 타겟 넘버 js
    페블_
    페블_

    티스토리툴바