这篇题解主要是练习一下容器的基本使用(用一些容器简单操作来写)
代码如下:
思想是全排列 以前有发布的全排列题解 蛮简单的
#includeusing namespace std; vector v[22]; int n,num; int f[22]; set s; void dfs(int depth){ if(depth>n){ if(s.size()==n){ num++; } return ; } vector ::iterator it; for(it=v[depth].begin();it!=v[depth].end();it++){ if(!f[*it]){ f[*it]=1; s.insert(*it); dfs(depth+1); f[*it]=0; } } return ; } int main(){ cin>>n; for(int i=1;i<=n;i++){ int a,b; cin>>a>>b; v[i].push_back(a); v[i].push_back(b); } dfs(1); cout<



