java最后一个TLE求助
查看原帖
java最后一个TLE求助
348846
ACPasser楼主2020/8/18 20:11
import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int n = input.nextInt();
        int m = input.nextInt();
        int[][] arr = new int[n+1][n+1];
        int[][] tmp1 = new int[n+1][n+1];
        int count = 1;
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n; j++) {
                arr[i][j] = count++;
            }
        }
        for (int k = 0; k < m; k++) {
            int x = input.nextInt();
            int y = input.nextInt();
            int r = input.nextInt();
            int z = input.nextInt();
            if(r == 0){
                continue;
            }
            for (int i = - r; i <= r;i++) {
                for (int j = - r; j <= r;j++) {
                    tmp1[x+i][y+j] = arr[x+i][y+j];
                }
            }
            if (z == 0) {
                for (int i = - r; i <= r;i++) {
                    for (int j = - r; j <= r;j++) {
                        arr[x+j][y-i] = tmp1[x+i][y+j];
                    }
                }
            }
            if(z == 1){
                for (int i = - r; i <= r;i++) {
                    for (int j = - r; j <= r;j++) {
                        arr[x-j][y+i] = tmp1[x+i][y+j];
                    }
                }
            }
        }
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j <= n; j++) {
                System.out.print(arr[i][j]+" ");
            }
            System.out.println();
        }
    }
}
2020/8/18 20:11
加载中...