Skip to content

Commit b27bea6

Browse files
authored
Merge pull request #15 from kkangsol/main
pr from hansol to main
2 parents 95702b2 + 3692c02 commit b27bea6

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

Hansol/august/Boj11660.java

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package fisa_cote.august;
2+
3+
import java.io.BufferedReader;
4+
import java.io.BufferedWriter;
5+
import java.io.IOException;
6+
import java.io.InputStreamReader;
7+
import java.io.OutputStreamWriter;
8+
import java.util.StringTokenizer;
9+
10+
public class Boj11660 {
11+
public static void main(String[] args) throws IOException{
12+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
13+
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
14+
StringBuilder sb = new StringBuilder();
15+
StringTokenizer st = new StringTokenizer(br.readLine());
16+
17+
int N = Integer.parseInt(st.nextToken()); // N x N 개의 수(표)
18+
int M = Integer.parseInt(st.nextToken()); // 합 구할 횟수
19+
20+
int[][] arr = new int[N][N]; // Original 배열
21+
int[][] sumArr = new int[N+1][N+1]; // 합배열
22+
23+
for(int i = 0; i < N; i++) {
24+
st = new StringTokenizer(br.readLine());
25+
for(int j = 0; j < N; j++) {
26+
arr[i][j] = Integer.parseInt(st.nextToken());
27+
}
28+
}
29+
30+
for(int i = 1; i <= N; i++) {
31+
for(int j = 1; j <= N; j++) {
32+
sumArr[i][j] = sumArr[i-1][j] + sumArr[i][j-1] + arr[i-1][j-1] - sumArr[i-1][j-1];
33+
}
34+
}
35+
36+
37+
38+
while(M-- > 0) {
39+
st = new StringTokenizer(br.readLine());
40+
int xStart = Integer.parseInt(st.nextToken());
41+
int yStart = Integer.parseInt(st.nextToken());
42+
int xEnd = Integer.parseInt(st.nextToken());
43+
int yEnd = Integer.parseInt(st.nextToken());
44+
45+
int answer = sumArr[xEnd][yEnd] - sumArr[xEnd][yStart-1] - sumArr[xStart-1][yEnd] + sumArr[xStart-1][yStart-1];
46+
47+
sb.append(answer).append("\n");
48+
}
49+
50+
bw.write(sb.toString());
51+
bw.flush();
52+
bw.close();
53+
br.close();
54+
55+
}
56+
}

0 commit comments

Comments
 (0)