网站开发技术技巧,电脑云主机,大丰做网站建设的公司,dora制作网页题目链接#xff1a;棋盘 这道题真的是非常典型的二维差分问题了#xff08;在我个人看来#xff09;#xff0c;题目中的0和1#xff0c;我们直接让差分数组#xff0c;偶数就是0#xff0c;奇数就是1.初始化是0#xff0c;是白子#xff08;偶数#xff09;#x… 题目链接棋盘 这道题真的是非常典型的二维差分问题了在我个人看来题目中的0和1我们直接让差分数组偶数就是0奇数就是1.初始化是0是白子偶数然后根据子矩阵范围开始进行差分数组的计算 import java.util.ArrayDeque;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改public class Main {static int[][] anew int[2100][2100];//一开始全是0static int[][] dnew int[2100][2100];//差分数组public static void main(String[] args) {Scanner scannernew Scanner(System.in);int nscanner.nextInt(),mscanner.nextInt();while(m--!0){int x1scanner.nextInt();int y1scanner.nextInt();int x2scanner.nextInt();int y2scanner.nextInt();cha(x1,y1,x2,y2);}for(int i1;in;i){for(int j1;jn;j){//计算a数组//反过来d[i][j]a[i][j]-a[i][j-1]-a[i-1][j]a[i-1][j-1]a[i][j]d[i][j]a[i-1][j]a[i][j-1]-a[i-1][j-1];}}for(int i1;in;i){for(int j1;jn;j){if(a[i][j]%20){System.out.print(0);}else{System.out.print(1);}}System.out.println();}}public static void cha(int x1,int y1,int x2,int y2){//这四个感觉就是模板了不理解可以背下来建议理解d[x1][y1];d[x21][y21];d[x1][y21]--;d[x21][y1]--;}
}