image

Bronze Ⅳ 🔗25304. 영수증

📝문제 요약

문제 설명

준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것이 맞는지 확인해보려 한다.

영수증에 적힌,

  • 구매한 각 물건의 가격과 개수
  • 구매한 물건들의 총 금액

을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자.

입력

첫째 줄에는 영수증에 적힌 총 금액 XX가 주어진다.

둘째 줄에는 영수증에 적힌 구매한 물건의 종류의 수 NN이 주어진다.

이후 NN개의 줄에는 각 물건의 가격 aa와 개수 bb가 공백을 사이에 두고 주어진다.

출력

구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하면 Yes를 출력한다. 일치하지 않는다면 No를 출력한다.


✏️문제 풀이

  • 변수 선언
    • 영수증에 적힌 총금액 x = int(input())
    • 영수증에 적힌 구매한 물건의 종류의 수 n = int(input())
    • 구매한 금액을 저장할 변수 price = 0
  • for문을 사용하여 n번 반복 for i in range(n) :
    • 물건의 가격과 개수를 입력할 변수 선언 a, b = map(int, input().split())
    • 구매한 금액을 모두 더할 수 있도록 a와 b를 곱한값을 반복문에 실행되는동안 더해줌 price += (a * b)
  • if ~ else문을 사용하여 조건 주기
    • if
      • price == x 계산된 값과 영수증에 적힌 값이 같으면
      • print('Yes') Yes 출력
    • else
      • if문에 해당하지 않는다면
      • print('No') No출력


💯제출 코드

x = int(input()) # 영수증에 적힌 총 금액
n = int(input()) # 영수증에 적힌 구매한 물건의 종류의 수
price = 0

for i in range(n) :
    a, b = map(int, input().split()) # a:물건의 가격, b:개수
    price += (a * b)
if price == x :
    print('Yes')
else :
    print('No')

댓글남기기