구매한 각 물건의 가격과 개수를 각각 a와 b로 설정
구매한 물건들의 총 금액을 X, sum[N-1]은 실제 입력한 가격과 개수로 계산된 총 금액으로 설정
둘을 비교후 결과값을 출력
#include <stdio.h>
#include <stdlib.h>
int main()
{
int X = 0;
int N = 0;
int a = 0;
int b = 0;
scanf("%d", &X);
scanf("%d", &N);
int* sum = (int*)malloc(sizeof(int) * N);
for (int i = 0; i < N; i++)
{
scanf("%d %d", &a, &b);
sum[i] = a * b;
}
for (int i = 0; i < N; i++)
{
sum[i+1] += sum[i];
/*printf("%d", sum[i]);*/ //검증출력
}
//printf("%d\n", sum[N-1]); //검증출력
if (sum[N-1]==X)
{
printf("Yes");
}
else
{
printf("No");
}
return 0;
}
이번 문제에서는 malloc을 통해서 입력 개수를 지정해두고 배열의 크기를 설정하여 해결하였다.
문제에서 지시하는 대로 X와 n을 입력받고, 반복문 내에서 a와 b를 n번 입력받으며 결과를 다른 변수에 저장, 비교결과를 출력한다!