题目:
![]()
解析:
部分决策树:
![]()
代码设计:
![]()
代码:
private int count;private boolean[] check;public int countArrangement(int n) {check = new boolean[n+1];dfs(n,1);return count;} private void dfs(int n, int pos){if(pos == n+1){count++;return;}for(int i = 1; i <= n; i++){if(check[i] == false && (i % pos == 0 || pos % i == 0)){check[i] = true;dfs(n,pos+1);check[i] = false;//恢复现场}}}