代码没什么问题,就是java太慢了,在这很多都超时,这有啥办法捏~(摊手)
查看原帖
代码没什么问题,就是java太慢了,在这很多都超时,这有啥办法捏~(摊手)
888930
youyang123123楼主2023/1/26 17:07
import java.util.*;

/**
 * @ClassName : P3397地毯  //类名
 * @Description :   //描述
 * @Author : 悠扬 //作者
 * @Date: 2023/1/26  15:52
 */
public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);;
        int n = scanner.nextInt();
        int m = scanner.nextInt();
        int [][]diff = new int[n+2][n+2];
        for(int i = 0;i<m;i++){
            int x1 = scanner.nextInt();
            int y1 = scanner.nextInt();
            int x2 = scanner.nextInt();
            int y2 = scanner.nextInt();
            //左上角
            diff[x1][y1]++;
            //右下角
            diff[x2+1][y2+1]++;
            //右上角
            diff[x1][y2+1]--;
            //左下角
            diff[x2+1][y1]--;
        }
        //复原数组
        for(int i = 1;i<=n;i++){
            for (int j = 1; j <= n; j++) {
                diff[i][j] += diff[i-1][j]+diff[i][j-1]-diff[i-1][j-1];
            }
        }
        for(int i = 1;i<=n;i++){
            for(int j = 1;j<=n;j++){
                System.out.print(diff[i][j]+" ");
            }
            System.out.println();
        }
    }
2023/1/26 17:07
加载中...