1 TC Fail out of 3

import java.util.*;
public class Main {
static boolean isItSafeRow(int[][] board, int row, int val) {
for (int c = 0; c < board[0].length; c++) {
if (board[row][c] == val) {
return false;
}
}
return true;
}

static boolean isItSafeCol(int[][] board, int col, int val) {
	for (int r = 0; r < board.length; r++) {
		if (board[r][col] == val) {
			return false;
		}
	}
	return true;
}

static boolean isItSafeBlock(int[][] board, int row, int col, int val) {
	int bsr = row - row % 3;
	int bsc = col - col % 3;
	for (int r = bsr; r < bsr + 3; r++) {
		for (int c = bsc; c < bsc + 3; c++) {
			if (board[r][c] == val) {
				return false;
			}
		}
	}
	return true;
}

static boolean isItSafe(int[][] board, int row, int col, int val) {
	return isItSafeRow(board, row, val) && isItSafeCol(board, col, val) && isItSafeBlock(board, row, col, val);
}

static void sudukoSolver(int[][] board, int row, int col) {

	if (row == board.length-1 && col==board.length-1   ) {
		for (int i = 0; i < board.length; i++) {
			for (int j = 0; j < board.length; j++) {
				System.out.print(board[i][j] + " ");
			}
			System.out.println();
		}
		return;
	}
	if (col == board[0].length) {
		col = 0;
		row++;
	}

	if (board[row][col] == 0) {
		for (int i = 1; i <= 9; i++) {
			if (isItSafe(board, row, col, i)) {
				board[row][col] = i;
				sudukoSolver(board, row, col + 1);
				board[row][col] = 0;
			}
		}
	} else {
		sudukoSolver(board, row, col + 1);
		return;
	}

}

public static void main(String[] args) {
	Scanner sc = new Scanner(System.in);
	int N = sc.nextInt();
	int[][] board = new int[N][N];

	for (int i = 0; i < board.length; i++) {
		for (int j = 0; j < board[0].length; j++) {
			board[i][j] = sc.nextInt();
		}
	}
	sudukoSolver(board, 0, 0);
}

}

dry run your code for
9
0 0 0 0 0 0 6 8 0
0 0 0 0 7 3 0 0 9
3 0 9 0 0 0 0 4 5
4 9 0 0 0 0 0 0 0
8 0 3 0 5 0 9 0 2
0 0 0 0 0 0 0 3 6
9 6 0 0 0 0 3 0 8
7 0 0 6 8 0 0 0 0
0 2 8 0 0 0 0 0 0

correct ans shd be
1 7 2 5 4 9 6 8 3
6 4 5 8 7 3 2 1 9
3 8 9 2 6 1 7 4 5
4 9 6 3 2 7 8 5 1
8 1 3 4 5 6 9 7 2
2 5 7 1 9 8 4 3 6
9 6 4 7 1 5 3 2 8
7 3 1 6 8 2 5 9 4
5 2 8 9 3 4 1 6 7

you are getting 0 in place of 7
debug for this