백준 2167 c++

magicdrill·2024년 3월 5일

백준 문제풀이

목록 보기
103/673

백준 2167 c++

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

vector <vector<int>> arr (301, vector <int>(301, 0));
vector <vector<int>> info;

void input_arr(int N, int M)
{
	int i, j;

	for (i = 1; i <= N; i++)
	{
		for (j = 1; j <= M; j++)
		{
			cin >> arr[i][j];
		}
	}
	return;
}

void input_K(int K)
{
	int i;
	int a, b, x, y;

	for (i = 0; i < K; i++)
	{
		cin >> a >> b >> x >> y;
		info.push_back({a, b, x, y});
	}

	return;
}

void find_result(int K)
{
	int i, j, k;
	int a, b, x, y;
	int sum;

	for (i = 0; i < K; i++)
	{
		sum = 0;
		a = info[i][0];
		b = info[i][1];
		x = info[i][2];
		y = info[i][3];
		for (j = a; j <= x; j++)
		{
			for (k = b; k <= y; k++)
			{
				sum += arr[j][k];
			}
		}
		cout << sum << "\n";
	}

	return;
}

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

	int N, M, K;
	
	cin >> N >> M;
	input_arr(N, M);
	cin >> K;
	input_K(K);
	find_result(K);

	return 0;
}

0개의 댓글