Untitled
unknown
plain_text
2 years ago
1.6 kB
7
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...