반응형
문제
준원이는 저번 주에 살면서 처음으로 코스트코를 가 봤다. 정말 멋졌다. 그런데, 몇 개 담지도 않았는데 수상하게 높은 금액이 나오는 것이다! 준원이는 영수증을 보면서 정확하게 계산된 것이 맞는지 확인해보려 한다.
영수증에 적힌,
- 구매한 각 물건의 가격과 개수
- 구매한 물건들의 총 금액
을 보고, 구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하는지 검사해보자.
입력
첫째 줄에는 영수증에 적힌 총 금액 X 가 주어진다.
둘째 줄에는 영수증에 적힌 구매한 물건의 종류의 수 N 이 주어진다.
이후 N 개의 줄에는 각 물건의 가격 a 와 개수 b 가 공백을 사이에 두고 주어진다.
출력
구매한 물건의 가격과 개수로 계산한 총 금액이 영수증에 적힌 총 금액과 일치하면 Yes를 출력한다. 일치하지 않는다면 No를 출력한다.
정답코드
1. Python
# 총 금액 X 입력받기
X = int(input())
# 물건의 종류의 수 N 입력받기
N = int(input())
# 물건의 총 비용 합 계산
total_cost = 0
for _ in range(N):
a, b = map(int, input().split()) # 물건의 가격 a와 개수 b 입력받기
total_cost += a * b # 각 물건의 총 비용을 더함
# 총 비용이 주어진 금액 X와 같은지 확인
if total_cost == X:
print("Yes")
else:
print("No")
2. Java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 총 금액 X 입력받기
int X = sc.nextInt();
// 물건의 종류의 수 N 입력받기
int N = sc.nextInt();
// 물건의 총 비용 합 계산
int total_cost = 0;
for (int i = 0; i < N; i++) {
int a = sc.nextInt(); // 물건의 가격 a 입력
int b = sc.nextInt(); // 물건의 개수 b 입력
total_cost += a * b; // 각 물건의 총 비용을 더함
}
// 총 비용이 주어진 금액 X와 같은지 확인
if (total_cost == X) {
System.out.println("Yes");
} else {
System.out.println("No");
}
}
}
3. C++
#include <iostream>
using namespace std;
int main() {
int X, N;
// 총 금액 X 입력받기
cin >> X;
// 물건의 종류의 수 N 입력받기
cin >> N;
// 물건의 총 비용 합 계산
int total_cost = 0;
for (int i = 0; i < N; i++) {
int a, b;
cin >> a >> b; // 물건의 가격 a와 개수 b 입력받기
total_cost += a * b; // 각 물건의 총 비용을 더함
}
// 총 비용이 주어진 금액 X와 같은지 확인
if (total_cost == X) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}
return 0;
}
4. JavaScript
const readline = require('readline').createInterface({
input: process.stdin,
output: process.stdout
});
const input = [];
readline.on('line', line => {
input.push(line);
}).on('close', () => {
const X = parseInt(input[0]); // 첫 번째 줄: 총 금액 X
const N = parseInt(input[1]); // 두 번째 줄: 물건의 종류 수 N
let total_cost = 0;
for (let i = 2; i < 2 + N; i++) {
const [a, b] = input[i].split(' ').map(Number);
total_cost += a * b; // 각 물건의 총 비용을 더함
}
// 총 비용이 주어진 금액 X와 같은지 확인
console.log(total_cost === X ? "Yes" : "No");
});
5. C
#include <stdio.h>
int main() {
int X, N, a, b, total_cost = 0;
// 총 금액 X 입력받기
scanf("%d", &X);
// 물건의 종류의 수 N 입력받기
scanf("%d", &N);
// 물건의 총 비용 합 계산
for (int i = 0; i < N; i++) {
scanf("%d %d", &a, &b); // 물건의 가격 a와 개수 b 입력받기
total_cost += a * b; // 각 물건의 총 비용을 더함
}
// 총 비용이 주어진 금액 X와 같은지 확인
if (total_cost == X) {
printf("Yes\n");
} else {
printf("No\n");
}
return 0;
}
반응형
'알고리즘 문제풀이 > 백준' 카테고리의 다른 글
백준 15552번 빠른 A+B 정답 코드 (3) | 2024.10.12 |
---|---|
백준 25314번 코딩은 체육과목 입니다 정답 코드 (1) | 2024.10.12 |
백준 8393번 합 정답 코드 (0) | 2024.10.09 |
백준 10950번 A+B-3 정답 코드 (1) | 2024.10.09 |
백준 2739번 구구단 정답 코드 (1) | 2024.10.09 |
댓글