public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int height = Integer.parseInt(st.nextToken());
int width = Integer.parseInt(st.nextToken());
int offsetX = Integer.parseInt(st.nextToken());
int offsetY = Integer.parseInt(st.nextToken());
StringBuilder sb = new StringBuilder();
int[][] a = new int[height][width];
for (int i = 0; i < height; i++) {
st = new StringTokenizer(br.readLine());
for (int j = 0; j < width; j++) {
int value = Integer.parseInt(st.nextToken());
if (i >= offsetX && j >= offsetY) {
a[i][j] = value - a[i - offsetX][j - offsetY];
} else {
a[i][j] = value;
}
sb.append(a[i][j]).append(" ");
}
sb.append("\n");
}
System.out.print(sb);
}
출처:https://www.acmicpc.net/problem/16967
