반응형
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
풀이
시간 체크를 쉽게 하기 위해 모든 시간을 분으로 바꿔 계산하도록 한다.
또한 요일 체크를 쉽게 하기 위해 나머지 연산을 사용하면 좋다.
def solution(schedules, timelogs, startday):
result = 0
# 직원 순회
for i in range(len(schedules)):
schedule = convert(schedules[i]) + 10
timelog = timelogs[i]
cur_day = startday - 1
# 출근 기록 순회
for log in timelog:
cur_day += 1
# 토, 일은 제외
if cur_day % 7 in [0, 6]:
continue
# 지각 체크
if convert(log) > schedule:
break
else:
result += 1
return result
def convert(time):
time = str(time)
h, m = time[:-2], time[-2:]
return int(h)*60 + int(m)
반응형
'알고리즘 연습 > 구현, 문자열' 카테고리의 다른 글
[Lv.1 / 프로그래머스 / 파이썬] 택배 상자 꺼내기 (2025 프로그래머스 코드챌린지 2차 예선) (0) | 2025.02.17 |
---|---|
[Lv.2 / 프로그래머스 / 파이썬] 충돌위험 찾기 (PCCP 기출문제 3번) (0) | 2025.02.11 |
[Lv.1 / 프로그래머스 / 파이썬] 데이터 분석 (PCCE 기출문제 10번) (1) | 2025.01.30 |
[Lv.1 / 프로그래머스 / 파이썬] 동영상 재생기 (PCCP 기출문제 1번) (1) | 2024.12.18 |
[Lv.1 / 프로그래머스 / 파이썬] 카드 뭉치 (0) | 2024.08.30 |