728x90

문제

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

영수증에 적힌,

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

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

 

입력

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

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

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

 

출력

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

 

제한

 

예제 입력 1 

260000
4
20000 5
30000 2
10000 6
5000 8

 

예제 출력 1 

Yes

영수증에 적힌 구매할 물건들의 목록으로 계산한 총 금액은 20000 × 5 + 30000 × 2 + 10000 × 6 + 5000 × 8 = 260000원이다. 이는 영수증에 적힌 총 금액인 260000원과 일치한다. 

 

예제 입력 2 

250000
4
20000 5
30000 2
10000 6
5000 8

 

예제 출력 2 

No

 

출처

University > 연세대학교 미래캠퍼스 > 2022 연세대학교 미래캠퍼스 슬기로운 코딩생활 A번

  • 문제를 검수한 사람: jhnah917, yclock
  • 문제를 만든 사람: junie

 

알고리즘 분류

  • 수학
  • 구현
  • 사칙연산

 

문제 출처

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

 

25304번: 영수증

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

www.acmicpc.net

 


 

문제 해결 방법

간단하게 문제를 해결하였다. C++ 스타일의 동적 할당(new 연산자 사용)을 사용하여 입력 받은 변수의 크기의 배열을 할당하여 문제를 해결하는데 사용하였다.

 

코드

#include <iostream>
using namespace std;

int main() {
    cin.tie(NULL);
    cout.tie(NULL);
    ios_base::sync_with_stdio(false);

    int X, N, sum = 0;

    cin >> X >> N;

    // Dynamic Allocation
    int *price = new int[N];
    int *amount = new int[N];

    for (int i = 0; i < N; i++) {
        cin >> price[i] >> amount[i];
        sum += price[i] * amount[i];
    }

    if (X == sum) {
        cout << "Yes" << endl;
    }
    else {
        cout << "No" << endl;
    }

    delete(price);
    delete(amount);
    
    return 0;
}

 

채점 결과

 

참고

  • [단계별로 풀어보기] > [반복문]

 

728x90

'Problem Solving > BOJ' 카테고리의 다른 글

[BOJ-5622][C++] 다이얼  (0) 2022.08.24
[BOJ-2908][C++] 상수  (2) 2022.08.24
[BOJ-1152][C++] 단어의 개수  (0) 2022.08.24
[BOJ-1157][C++] 단어 공부  (0) 2022.08.24
[BOJ-3003][C++] 킹, 퀸, 룩, 비숍, 나이트, 폰  (0) 2022.08.24
[BOJ-2675][C++] 문자열 반복  (0) 2022.08.24
[BOJ-10890][C++] 알파벳 찾기  (0) 2022.07.30
[BOJ-11720][C++] 숫자의 합  (0) 2022.07.12