본문 바로가기
코딩테스트/Beakjoon

백준 25304번 : 영수증 [Python]

by 나스나키 2024. 1. 21.
728x90

https://www.acmicpc.net/problem/25304

 

25304번: 영수증

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

www.acmicpc.net

 

 

문제 

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

영수증에 적힌,

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

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

 
 

입력

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

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

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

 
 
 

출력

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

 

 

예시

 

코드

num = int(input())
count = int(input())
while count != 0:
    a, b = input().split()
    a = int(a)
    b = int(b)
    num = num - (a*b)
    count = count - 1
if num == 0:
    print("Yes")
else:
    print("No")

 

 

코드 해석

  • 최종 금액을 수를 받는다. 
  • 몇 개를 담을 건지 수를 받는다. 
  • 담은 수들을 while문으로 받는다 .
    • 두 수를 받는다. 
    • 최종 금액에 두수의 곱을 뺀다.
    • 담수 수를 - 1을 한다.
  • num이 0이라면 Yes 아니라면 No를 출력한다.

728x90