https://www.acmicpc.net/problem/11660
11660번: 구간 합 구하기 5
첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네
www.acmicpc.net
#include<iostream>
using namespace std;
int prefixsum[1025][1025] ={0};
int dp[1025][1025];
int main(){
int x1;
int x2;
int y1;
int y2;
int N;
int M;
cin >> N >> M;
for(int i = 1; i <= N; i++){
for(int j = 1; j <= N; j++){
cin >> prefixsum[i][j];
dp[i][j] = dp[i-1][j] + dp[i][j-1] -dp[i-1][j-1] + prefixsum[i][j];
}
}
for(int i = 0; i < M; i++){
cin>>x1>>y1>>x2>>y2;
cout<<dp[x2][y2]-dp[x1-1][y2]-dp[x2][y1-1]+dp[x1-1][y1-1]<<'\n';
}
return 0;
}
'BOJ 백준 > Class 4' 카테고리의 다른 글
백준 9465번, 스티커(C, C++) (0) | 2022.01.21 |
---|---|
백준 1916번, 최소비용 구하기(C, C++) (0) | 2022.01.21 |
백준 11053번, 가장 긴 증가하는 부분 수열( C, C++) (0) | 2022.01.20 |
백준 1967번, 트리의 지름(C, C++) (0) | 2022.01.20 |
백준 2096번, 내려가기(C, C++) (0) | 2022.01.20 |