Untitled
unknown
plain_text
2 years ago
1.6 kB
6
Indexable
package UniformDistribution; import java.io.FileInputStream; import java.util.Scanner; public class uniformDistribution { static int [][] map; static int [][] arr1; static int N; static int [] dx = {-1, 0, 1, 0}; static int [] dy = {0, 1, 0, -1}; static void move(int x, int y, int k) { map[x][y] = 0; for (int i = 0; i < 4; i++) { int x1 = x+dx[i]; int y1 = y+dy[i]; if (x1 >= 0 && x1 < N && y1 < N && y1 >= 0 && map[x1][y1] == k) { move(x1, y1, k); } } } public static void main(String[] args) throws Exception { System.setIn(new FileInputStream("D://Trainee//SRV_training//src//UniformDistribution//uniform.txt")); Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int test_case = 1; test_case <= T; test_case++) { N = sc.nextInt(); map = new int [N][N]; arr1 = new int [2][N]; for (int i = 1; i < N; i++) { for (int j = 0; j < N; j++) { int x = sc.nextInt()-1; int y = sc.nextInt()-1; map[x][y] = i; if (j == 0) { arr1[0][i-1] = x; arr1[1][i-1] = y; } } } for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { if (map[i][j] == 0) { map[i][j] = N; arr1[0][N-1] = i; arr1[1][N-1] = j; } } } for (int i = 0; i < N; i++) { move(arr1[0][i], arr1[1][i], (i+1)); } String Ans = "Valid"; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { if (map[i][j] != 0) { Ans = "Invalid"; break; } } } System.out.println("#" + test_case + " " + Ans); } } }
Editor is loading...