#include <cstdio>
#include <cstring>
bool G[55][55];
int rec[55], k, n, m;
bool dfs(int cur, int length){
if(rec[cur]){
if(length - rec[cur] == k)
return true;
return false;
}
rec[cur] = length;
for(int i = 0; i < n; i++){
if(G[cur][i] && dfs(i, length+1)){
return true;
}
}
}
void init(){
for(int i = 0; i < n; i++) rec[i] = -1;
}
int main(){
int T;
scanf("%d", &T);
while(T--){
int tag = 0;
memset(G, false, sizeof G);
scanf("%d%d%d", &n, &m, &k);
for(int i = 0; i < m; i++){
int u, v;
scanf("%d%d", &u, &v);
G[u][v] = G[v][u] = true;
}
for(int i = 0; i < n; i++){
memset(rec, 0, sizeof rec);
if
CSU1660(深搜)
最新推荐文章于 2019-07-28 17:28:42 发布