Skip to content

Commit 85653de

Browse files
authored
Create 백준-2167-2차원배열의합.java
1 parent 3a1b39b commit 85653de

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
import java.io.*;
2+
import java.util.*;
3+
4+
public class Main {
5+
6+
public static void main(String[] args) throws IOException{
7+
8+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
9+
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
10+
11+
StringTokenizer st = new StringTokenizer(br.readLine());
12+
13+
int N = Integer.parseInt(st.nextToken());
14+
int M = Integer.parseInt(st.nextToken());
15+
16+
int[][] oldarr = new int[N+1][M+1];
17+
int[][] newarr = new int[N+1][M+1];
18+
19+
for(int i = 1; i<N+1; i++){
20+
st = new StringTokenizer(br.readLine());
21+
for(int p = 1; p<M+1; p++) {
22+
oldarr[i][p] = Integer.parseInt(st.nextToken());
23+
}
24+
}
25+
26+
for(int m = 1; m<N+1; m++){
27+
for(int l = 1; l<M+1; l++){
28+
newarr[m][l] = newarr[m-1][l] + newarr[m][l-1] - newarr[m-1][l-1] + oldarr[m][l];
29+
}
30+
}
31+
32+
int K = Integer.parseInt(br.readLine());
33+
34+
for(int u = 0; u<K; u++){
35+
st = new StringTokenizer(br.readLine());
36+
37+
int x1 = Integer.parseInt(st.nextToken());
38+
int y1 = Integer.parseInt(st.nextToken());
39+
int x2 = Integer.parseInt(st.nextToken());
40+
int y2 = Integer.parseInt(st.nextToken());
41+
42+
int result = newarr[x2][y2] - newarr[x1-1][y2] - newarr[x2][y1-1] + newarr[x1-1][y1-1];
43+
44+
bw.write(result+"");
45+
bw.newLine();
46+
bw.flush();
47+
}
48+
}
49+
}

0 commit comments

Comments
 (0)