본문 바로가기

코드업 문제집 파이썬 if ~else 1165 : 축구의 신 1

관리하수달 2026. 8. 29.

[문제 해설(핵심)]

-> 지금부터 90분이 되기 전까지 5분마다 몇 골을 더 넣을 수 있는지 계산

현재 80분, 현재 0점이라고 했을 때 최종 점수 2점

 

  • 80분 → 골
  • 85분 → 골
  • 90분 → 경기 종료라 골 X

 

[문제 풀이]

1. if else 문 사용

[핵심]

골 넣을 수 있는 마지막 시간 - 현재 시간 

그 시간 동안 5분이 몇 번 들어가는지 계산 //5

투입하자마자 넣는 첫 골 1개 추가 +1

 

input() : 입력받기
split() : 공백을 기준으로 나누기
int : 정수형으로 변환하기
map() : 여러 값에 같은 변환 적용하기

// : 정수 나눗셈

time, score = map(int, input().split())

if time < 90:
    score = score + (89 - time) // 5 + 1
else:
    score = score

print(score)

2. while문을 쓴다면 다음과 같이 풀 수 있다.

현재 시간이 90분보다 작은 동안 반복

골 1개 추가 score += 1

시간을 5분 증가 time += 5

다시 90분보다 작은지 확인

while : 조건이 참인 동안 계속 반복
+= : 기존 값에 더해서 다시 저장
time, score = map(int, input().split())

if time < 90:
    while time < 90:
        score += 1
        time += 5
else:
    score = score

print(score)

3. for문을 쓴다면 다음과 같이 풀 수 있다.

현재 시간부터 90분 전까지

5분 간격으로 시간을 만들어줌 range(time, 90, 5)

시간이 한 번 나올 때마다 골 1개 추가 score += 1

for : 정해진 범위만큼 반복
range(시작, 끝, 간격) : 시작부터 끝 전까지 일정한 간격으로 숫자 생성
time, score = map(int, input().split())

if time < 90:
    for i in range(time, 90, 5):
        score += 1
else:
    score = score

print(score)

댓글