

class Solution {
List <List<String>> result = new ArrayList()
public List<List<String>> solveNQueens(int n) {
int []arr = new int[n]
dfs(0,arr)
return result
}
public void dfs(int n,int arr[]) {
if(n==arr.length) {
List<String> list = new ArrayList<>()
for (int i = 0
String str = ""
for (int j = 0
if(j==arr[i]) {
str+="Q"
}else{
str+="."
}
}
list.add(str)
}
result.add(list)
return
}
for (int i = 0
if(check(arr,i,n)) {
arr[n] = i
dfs(n+1,arr)
}
}
}
public boolean check(int arr[],int i,int n) {
for (int j = 0
if(i==arr[j]||Math.abs(i-arr[j])==Math.abs(n-j)) {
return false
}
}
return true
}
}