hgk0404.tistory
Code After Work
hgk0404.tistory

공지사항

전체 방문자
오늘
어제
  • 전체 카테고리
    • [컴퓨터비전]
    • [Computer Science]
      • [컴퓨터네트워크]
      • [알고리즘]
      • [자료구조 in C]
      • [C & C++]
      • [이산수학]
      • [Math]
    • [머신러닝]
      • [Numpy, Pandas]
    • [Cloud]
      • [AWS]
      • [NCP]
      • [Kubernetes]
      • [Terraform]
    • [Dev]
      • [가상환경]
      • [Linux]
      • [Docker]
    • [Python]
    • [Coding Test]
      • [백준]
      • [프로그래머스]
      • [SQL]
    • [WEB]
    • [일상]
    • [엑셀]
    • [금융]

인기 글

최근 글

최근 댓글

250x250
hELLO · Designed By 정상우.
hgk0404.tistory

Code After Work

[Coding Test]/[프로그래머스]

[프로그래머스] lv2 기능개발 / 파이썬, 고득점kit

2023. 10. 9. 02:58
728x90

기능개발

 

"뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 같이 배포됩니다." 이 부분을 읽고 스택이 아닌 큐라고 생각했다.

그래서 deque()를 이용하는 문제인가 생각했지만 deque() 없이도 풀 수 있는 문제였다.

두 리스트를 합치는 zip함수를 사용하는 방법도 있지 않을까 생각했지만 그럴 필요 없이 풀 수 있는 문제였다.

 

주의점!

  • 뒷 순서의 요소가 먼저 100 이상이 되어도 빠질 수 없다

 

해결방법

  • progresses와 speeds의 길이는 항상 같다. progresses의 길이만큼 반복해 주며 speeds를 각 요소에 맞게 추가한다
  • 뒷 순서의 기능은 앞 순서의 기능이 100이상이 되면 출력될 수 없으므로 progresses[0]만 고려해 준다

 

def solution(progresses, speeds):
    answer = []
    while progresses:
        for i in range(len(progresses)):
            progresses[i] += speeds[i]
        cnt = 0
        for i in range(len(progresses)):
            if progresses[0] >= 100:
                progresses.pop(0)
                speeds.pop(0)
                cnt += 1
        if cnt != 0:
            answer.append(cnt)
    return answer

 

728x90
저작자표시 동일조건 (새창열림)

'[Coding Test] > [프로그래머스]' 카테고리의 다른 글

[프로그래머스] 프로세스  (0) 2023.10.09
[프로그래머스] lv2 올바른 괄호 / 파이썬, 고득점kit  (0) 2023.10.09
[프로그래머스] lv1 같은 숫자는 싫어 / 파이썬, 고득점kit  (0) 2023.10.08
[프로그래머스] lv3 베스트앨범 / 파이썬, 고득점kit  (0) 2023.10.05
[프로그래머스] lv2 의상 / 파이썬, 고득점kit  (0) 2023.10.05
'[Coding Test]/[프로그래머스]' 카테고리의 다른 글
  • [프로그래머스] 프로세스
  • [프로그래머스] lv2 올바른 괄호 / 파이썬, 고득점kit
  • [프로그래머스] lv1 같은 숫자는 싫어 / 파이썬, 고득점kit
  • [프로그래머스] lv3 베스트앨범 / 파이썬, 고득점kit
hgk0404.tistory
hgk0404.tistory
공부기록

티스토리툴바