[백 준 Java] 25304번 문제

문제 설명

준원은 지난주 생애 처음으로 코스트코를 찾았다. 정말 멋졌습니다. 참, 몇 개도 안 적었는데도 수상하게 많은 양이 나왔어요! 준원은 영수증을 보고 청구서가 맞는지 확인하려고 합니다.

영수증에 적힌

  • 구입한 각 품목의 가격과 수량
  • 구매한 총 아이템 수

그리고 구매한 상품의 가격과 개수로 계산한 총액이 영수증에 기재된 총액과 일치하는지 확인합니다.

기입

첫 번째 줄은 X에게 영수증의 총 금액을 제공합니다.

두 번째 줄에는 영수증에서 구매한 항목 유형의 수인 N이 포함됩니다.

다음 N행에는 각 항목의 가격 a와 수량 b가 간격을 두고 표시됩니다.


누르다
구매한 상품의 가격과 개수로 계산한 총액이 영수증에 기재된 총액과 일치할 때 맞지 않으면 종료아니요출구


국경


연산

해결 방법

주문 총 수량에서 품목 가격 * 품목 수를 뺍니다. 0이 나오면 “예”를 반환합니다.

솔루션 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;

public class Main {

    public static void main(String() args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(reader.readLine());
        int total = Integer.parseInt(st.nextToken());
        st = new StringTokenizer(reader.readLine());
        int t = Integer.parseInt(st.nextToken());
        for (int i = 0; i < t; i++) {
            st = new StringTokenizer(reader.readLine());
            int price = Integer.parseInt(st.nextToken());
            int num = Integer.parseInt(st.nextToken());

            total -= price * num;
        }
        if (total == 0) {
            System.out.println("Yes");
        } else {
            System.out.println("No");
        }
    }
}

지름길

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

25304호: 영수증

준원은 지난주 생애 처음으로 코스트코를 찾았다. 정말 멋졌습니다. 참, 몇 개도 안 적었는데도 수상하게 많은 양이 나왔어요! 준원은 영수증을 보고 정확한 금액을 계산했다.

www.acmicpc.net