19 条题解
-
0
#include<bits/stdc++.h> using namespace std; long long s[20][2],ans=0,n; bool p[20]={false}; void dfs(int k) { if(k>n) { ans++; return ; } int a=s[k][0]; int b=s[k][1]; if(!p[a]) { p[a]=true; dfs(k+1); p[a]=false; } if(!p[b]) { p[b]=true; dfs(k+1); p[b]=false; } } int main() { cin>>n; for(int i=1;i<=n;i++) cin>>s[i][0]>>s[i][1]; dfs(1); cout<<ans; return 0; }
信息
- ID
- 103
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 47
- 已通过
- 15
- 上传者