본문 바로가기

STUDY/Python

[Softeer] 근무 시간

728x90

- 근무시간 확인 프로그램

- 5일간 몇분 일했는지 계산하기

 

[풀이 1]

import sys

lines = sys.stdin.readlines()
result = 0

for line in lines:
    a, b = map(str, line.split())
    a_h, a_m =map(int, a.split(":"))
    b_h, b_m =map(int, b.split(":"))
    
    if b_m<a_m:
        b_h = b_h-1
        b_m = b_m+60

        total_t = (b_h-a_h)*60 + (b_m-a_m)
    else:
        total_t = (b_h-a_h)*60 + (b_m-a_m)
    

    result += total_t
print(result)

 

[풀이 2]

import sys

lines = sys.stdin.readlines()
A_box = []
B_box = []
A_h = []
A_m = []
B_h = []
B_m = []

for line in lines:
    A, B = map(str, line.split(" "))
    A = A.replace('\n', '')
    B = B.replace('\n', '')
    A_box.append(A)
    B_box.append(B)

# 출근 시간
for w in A_box:
    a_h, a_m = map(int, w.split(":"))
    A_h.append(a_h)
    A_m.append(a_m)

# 퇴근 시간
for w in B_box:
    b_h, b_m = map(int, w.split(":"))
    B_h.append(b_h)
    B_m.append(b_m)

# 계산
compute_time=0
for i in range(len(A_h)):
    if B_m[i]>A_m[i]:
        compute_time += 60*(B_h[i]-A_h[i])+(B_m[i]-A_m[i])
    elif B_m[i]<A_m[i]:
        compute_time += 60*(B_h[i]-A_h[i]-1)+(60+B_m[i]-A_m[i])
    else: 
        compute_time += 60*(B_h[i]-A_h[i])

print(compute_time)
728x90

'STUDY > Python' 카테고리의 다른 글

zip(), copy(), deepcopy()  (0) 2023.03.29
[Softeer] A+B  (0) 2023.03.28
[Softeer] 주행거리 비교하기  (0) 2023.03.27
[Softeer] 비밀 메뉴  (0) 2023.03.27
[Softeer] 장애물 인식 프로그램 파이썬  (0) 2023.03.19