BackJoon_영수증

Inhwan98·2023년 1월 30일
0

PTU STUDY_BACKJOON

목록 보기
7/21

문제

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

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

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

입력

첫째 줄에는 영수증에 적힌 총 금액 X가 주어진다.
둘째 줄에는 영수증에 적힌 구매한 물건의 종류의 수 N이 주어진다.
이후 N개의 줄에는 각 물건의 가격 a와 개수 b가 공백을 사이에 두고 주어진다.

출력

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

예제

  • Example 1:
Input:
260000
4
20000 5
30000 2
10000 6
5000 8

Output:
Yes
  • Example 2:
Input:
250000
4
20000 5
30000 2
10000 6
5000 8

Output:
No

코드

#define _CRT_SECURE_NO_WARNINGS
#include <iostream>

using namespace std;

int main()
{
	int x, n, a, b;
	scanf("%d", &x);
	scanf("%d", &n);

	for (int i = 0; i < n; i++)
	{
		scanf("%d %d", &a, &b);
		x -= a * b;
	}

	if (x == 0) printf("Yes\n");
	else printf("No");

	return 0;
}

풀이

1.

scanf("%d", &x);
scanf("%d", &n);
  • 영수증의 최종 가격과 구매한 물건의 종류의 수를 입력 받는다.

2.

for (int i = 0; i < n; i++)
	{
		scanf("%d %d", &a, &b);
		x -= a * b;
	}
  • 구매한 물건의 종류의 수만큼 물건의 개수와 가격을 입력받고 최종가격에서 빼준다.

3.

if (x == 0) printf("Yes\n");
	else printf("No");
  • 최종 가격인 x가 딱 0으로 수렴하면 Yes를 출력하고 아니라면 No를 출력 한다.

결과

Runtime 0 ms / Memory 2020 KB


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

profile
코딩마스터

0개의 댓글