728x90
✅ 문제 링크
아래 링크를 통해 문제 페이지로 이동할 수 있습니다.
✅ 문제 설명
728x90
✅ 문제 풀이
이 문제는 이전에 풀었던 문제들의 핵심 아이디어를 모두 가져와야 합니다.
- 초기값 설정:
- 영수증 총액 X와 물건 종류 수 N을 먼저 입력받습니다.
- 내가 직접 계산할 총액을 저장할 변수(예: calculated_total)를 만들고 0으로 초기화합니다. (8393번 '합' 문제의 누적 합계 패턴)
- N번 반복하기:
- 물건 종류 수 N만큼 반복해야 하므로 for _ in range(N): 구문을 사용합니다. (10950번 'A+B-3' 문제의 테스트 케이스 패턴)
- 반복문 안에서 계산하고 누적하기:
- for문 안에서 각 물건의 가격 a와 개수 b를 입력받습니다.
- 해당 물건의 총가격 a * b를 계산합니다.
- 이 값을 calculated_total 변수에 계속 더해줍니다. (calculated_total += a * b)
- 최종 비교하기:
- 반복문이 모두 끝나면, calculated_total에는 내가 계산한 총액이 담겨있습니다.
- if문을 사용해 calculated_total과 영수증 총액 X가 같은지 비교하고, 결과에 따라 Yes 또는 No를 출력합니다.
✅ 정답 코드
# 영수증에 적힌 총액 X를 입력받습니다.
X = int(input())
# 구매한 물건의 종류 수 N을 입력받습니다.
N = int(input())
# 내가 계산할 총액을 저장할 변수를 0으로 초기화합니다.
calculated_total = 0
# N번만큼 반복하여 각 물건의 정보를 입력받습니다.
for _ in range(N):
# 물건의 가격 a와 개수 b를 입력받습니다.
a, b = map(int, input().split())
# 해당 물건의 가격 * 개수를 계산하여 누적합니다.
calculated_total += a * b
# 내가 계산한 총액과 영수증 총액이 같은지 비교합니다.
if calculated_total == X:
print("Yes")
else:
print("No")
728x90
'단계별로 풀어보기 : 백준 > 반복문' 카테고리의 다른 글
[백준] 11021번 A+B-7 - Python(파이썬) (0) | 2025.07.14 |
---|---|
[백준] 15552번 빠른 A+B - Python(파이썬) (0) | 2025.07.14 |
[백준] 25314번 코딩은 체육과목 입니다 - Python(파이썬) (0) | 2025.07.13 |
[백준] 8393번 합 - Python(파이썬) (2) | 2025.07.12 |
[백준] 10950번 A+B - 3 - Python(파이썬) (1) | 2025.07.12 |