1、题目
https://leetcode-cn.com/problems/beautiful-arrangement/
2、题意
题解1:深搜
class Solution {
public:
int countArrangement(int N) {
vis.resize(N+1,0);
dfs(N);
return res;
}
private:
vector<bool> vis;
int res = 0;
void dfs(int num)
{
if(num==1)
{
res++;
return;
}
for(int i=1;i<vis.size();i++)
{
if(!vis[i]&&(num%i==0||i%num==0))
{
vis[i] = true;
dfs(num-1);
vis[i] = false;
}
}
}
};