backtracking java y c