728x90
3. 반복문
- 1) 2739번 - 구구단
- 2) 10950번 - A+B - 3
- 3) 8393번 - 합
- 4) 25304번 - 영수증 ←
- 5) 15552번 - 빠른 A+B
- 6) 11021번 - A+B - 7
- 7) 11022번 - A+B - 8
- 8) 2438번 - 별 찍기 - 1
- 9) 2439번 - 별 찍기 - 2
- 10) 10871번 - X보다 작은 수
- 11) 10952번 - A+B - 5
- 12) 10951번 - A+B - 4
- 13) 1110번 - 더하기 사이클
3. 반복문
4) 25304번 - 영수증
문제
준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것이 맞는지 확인해보려 한다.
영수증에 적힌,
- 구매한 각 물건의 가격과 개수
- 구매한 물건들의 총 금액
을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자.
입력
첫째 줄에는 영수증에 적힌 총 금액 X가 주어진다.
둘째 줄에는 영수증에 적힌 구매한 물건의 종류의 수 N이 주어진다.
이후 N개의 줄에는 각 물건의 가격 a와 개수 b가 공백을 사이에 두고 주어진다.
출력
구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하면 Yes를 출력한다. 일치하지 않는다면 No를 출력한다.
제한
예제 입력 1
260000
4
20000 5
30000 2
10000 6
5000 8
예제 출력 1
Yes
예제 입력 2
250000
4
20000 5
30000 2
10000 6
5000 8
예제 출력 2
No
[ 정답 코드 ]
total = int(input())
total_ea = int(input())
result = 0
for N in range(total_ea) :
a, b = map(int, input().split())
result += (a * b)
if total == result :
print("Yes")
else :
print("No")
[문제 풀이]
풀이 :
total = int(input())
total_ea = int(input())
result = 0
- total 에는 총 금액이 주어진다.
- total_ea 에는 구매한 물건의 종류의 수가 주어진다.
- result 는 추후에 각 구매한 물품의 가격을 넣어줄 변수이다.
for N in range(total_ea) :
a, b = map(int, input().split())
result += (a * b)
- 구매한 물품의 수만큼 반복문이 수행될 예정이다. ( for N in range(total_ea) : )
- a, b 에 각각 구매한 물품의 가격, 수량이 주어진다.
- 미리 준비해둔 result 변수에 반복될때마다 구매한 가격이 더해진다.
- result += (a * b) == result = result + (a * b) # 둘다 동일하다.
if total == result :
print("Yes")
else :
print("No")
- 총 금액이 주어진 total 값과 구매한 상품들의 가격이 더해진 result 값
- 조건문으로 두개의 값이 동일한지 확인하여 맞으면 Yes 아니라면 No 를 출력한다.
728x90
반응형
'coding > Algorithm [BOJ]' 카테고리의 다른 글
[Python][반복문] #028 - 11021번 파이썬 :: A+B - 7 - Coding Farm (1) | 2022.09.16 |
---|---|
[Python][반복문] #027 - 15552번 파이썬 :: 빠른 A+B - Coding Farm (0) | 2022.09.06 |
[Python][반복문] #025 - 8393번 파이썬 :: 합 - Coding Farm (2) | 2022.09.06 |
[Python][반복문] #024 - 10950번 파이썬 :: A+B - 3 - Coding Farm (0) | 2022.09.06 |