java 快读快写
原题: 棋盘
import java.io.*;
import java.util.*;
public class Main {
static int N = 2005;
static int[][] b = new int[N][N];
static int n, m;
static int x1, y1, x2, y2;
public static void insert(int x1, int y1, int x2, int y2) {
b[x1][y1] += 1;
b[x1][y2 + 1] -= 1;
b[x2 + 1][y1] -= 1;
b[x2 + 1][y2 + 1] += 1;
}
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
StreamTokenizer st = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
PrintWriter pw = new PrintWriter(new OutputStreamWriter(System.out));
st.nextToken();n = (int) st.nval;
st.nextToken();m = (int) st.nval;
while(m -- != 0) {
st.nextToken();x1 = (int) st.nval;
st.nextToken();y1 = (int) st.nval;
st.nextToken();x2 = (int) st.nval;
st.nextToken();y2 = (int) st.nval;
insert(x1, y1, x2, y2);
}
for(int i = 1; i <= n; i ++) {
for(int j = 1; j <= n; j ++) {
b[i][j] += b[i - 1][j] + b[i][j - 1] - b[i - 1][j - 1];
if(b[i][j] % 2 == 0) {
b[i][j] = 0;
} else {
b[i][j] = 1;
}
pw.print(b[i][j] == 1 ? 1:0);
}
pw.println();
}
pw.flush(); // 刷新流,不然打印不出什么东西
}
}