관리 메뉴

솜씨좋은장씨

[Programmers] 힙 : 디스크 컨트롤러 (Python) 본문

Programming/코딩 1일 1문제

[Programmers] 힙 : 디스크 컨트롤러 (Python)

솜씨좋은장씨 2020. 4. 9. 01:08
728x90
반응형

1일 1문제 63일차!

오늘의 문제는 프로그래머스의 디스크 컨트롤러입니다!

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

Solution

def solution(jobs):
    job_nums = len(jobs)
    answer = 0
    jobs.sort(key=lambda x: (x[0], x[1]))
    start, time = jobs.pop(0)
    end = time + start
    answer = answer + time
    while jobs:
        next_index = 0
        for index in range(1, len(jobs)):
            if jobs[index][0] > end:
                break
            else:
                if jobs[index][1] < jobs[next_index][1]:
                    next_index = index
        next_ = jobs.pop(next_index)
        if next_[0] <= end:
            answer = answer + next_[1] + (end - next_[0])
            end = end + next_[1]
        else:
            answer = answer + next_[1]
            end = sum(next_)

    return answer // job_nums

 

 

SOMJANG/CODINGTEST_PRACTICE

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

Comments