1 条题解
-
0
#include <bits/stdc++.h> using namespace std; #define int long long bool f[110][110]; int num,n,k,m,p[110]; bool check(int sum) { for(int i=1;i<=sum;i++){ if(f[i][sum]==true&&p[i]==p[sum]){ return false; } } return true; } void dfs(int s) { if(s>n){ num++; return; } for(int i=1;i<=m;i++){ p[s]=i; if(check(s)==true){ dfs(s+1); } else{ p[s]=0; } } } signed main() { cin>>n>>k>>m; for(int i=1;i<=k;i++){ int x,y; cin>>x>>y; f[y][x]=true; f[x][y]=true; } dfs(1); cout<<num; return 0; }
- 1
信息
- ID
- 139
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 4
- 标签
- (无)
- 递交数
- 46
- 已通过
- 22
- 上传者