👩‍💻 코테 공부/코테 공부

[코테 - py] 프로그래머스 PCCP 기출 2회 - 동영상 재생기

수댕ʕت̫͡ʔ 2024. 8. 31. 01:22

 

문제는 프로그래머스에서 확인할 수 있다. 오랜만에 재밌는 문제기도했다! 

def solution(video_len, pos, op_start, op_end, commands):

    # 모든 시간을 초 단위로 바꿔주자
    def min_switch(num):
        return (int(num[:2]) * 60) + int(num[3:])

    answer = ''

    video_len = min_switch(video_len)
    pos = min_switch(pos)
    op_start = min_switch(op_start)
    op_end = min_switch(op_end)

    for word in commands:
        if word == 'next':
            if op_start <= pos <= op_end:
                pos = op_end
                pos += 10
            else:
                pos += 10

        elif word == 'prev':
            if op_start <= pos <= op_end:
                pos = op_end
                pos -= 10
            else:
                pos -= 10

        if pos > video_len:
            pos = video_len
        if pos < 0:
            pos = 0

    if op_start <= pos <= op_end:
        pos = op_end

    hour = pos // 60
    m = pos % 60

    return f"{hour:02}:{m:02}"

 

여기서 포인트는 시간을 초로 바꿔서 다루는 것! 항상 이런 시간 구현 문제가 헷갈렸는데 이제는 접근방식을 잘 파악할 수 있을 것 같다.