• TOC {:toc}

이 글은 백준 온라인 저지의 10039번 문제를 파이썬(Python)으로 풀이한 것을 모아놓은 글입니다.

일종의 연습 기록이며 제가 정답을 받은 코드와 참고할만한 다른 코드를 같이 기록합니다. 필요한 경우 코드에 대한 해설을 기록합니다만 코드는 통과했어도 해설은 틀릴 수 있기 때문에 가볍게 참고해주시길 부탁드립니다. 피드백은 편하신 방법으로 자유롭게 주시면 감사하겠습니다.

2021.03.25

메모리 시간 코드 길이
28776 KB 64 ms 114 B
s = 0
for _ in range(5):
    n = int(input())
    # 점수가 40점보다 크거나 같을 때
    if n >= 40:
        # `s`에 점수 값을 더하고
        s += n
    # 아니면 
    else:
        # `40`을 더하는 과정을 반복한다.
        s += 40
# 반복이 끝나면 다 더해진 점수를 5로 나눈 값을 출력한다.
print(s // 5)

참고 답안 1

S = 0

for i in range(5):
    s = int(input())
    if s < 40:
        s = 40
    S += s
print(S // 5)

아이디어 & 풀이

풀이 1은 score가 입력값 s를 더해나가는 것은 동일하게 수행하되 그 전에 s가 40보다 작은 경우 s에 40을 대입했다.

  • 이게 더 제시한 문제를 충실히 구현한 것 같다.

참고 답안 2

s = 0
for i in range(5):
    s += max(40, int(input()))
print(int(s / 5))

아이디어 & 풀이

조건문 대신 max를 이용해 경우에 따라 값을 다르게 출력한다.