zoukankan      html  css  js  c++  java
  • hdu 4324(dfs)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4324

    思路:dfs搜索即可,如果当前点u的下一个点v已经访问过了,那么就判断dist[u]==dist[[v]+2,成立返回true,否则更新dist[v]=dist[u]+1,继续深搜。

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 #include<vector>
     6 using namespace std;
     7 #define MAXN 2222
     8 vector<int>vet[MAXN];
     9 char str[MAXN];
    10 int dist[MAXN];
    11 bool mark[MAXN];
    12 int n;
    13 
    14 bool dfs(int u) {
    15     mark[u]=true;
    16     for(int i=0; i<vet[u].size(); i++) {
    17         int v=vet[u][i];
    18         if(mark[v]&&dist[u]==dist[v]+2) {
    19             return true;
    20         } else if(!mark[v]) {
    21             dist[v]=dist[u]+1;
    22             if(dfs(v))return true;
    23         }
    24     }
    25     return false;
    26 }
    27 
    28 
    29 int main() {
    30 //    freopen("1.txt","r",stdin);
    31     int _case,t=1;
    32     scanf("%d",&_case);
    33     while(_case--) {
    34         scanf("%d",&n);
    35         for(int i=1; i<=n; i++)vet[i].clear();
    36         for(int i=1; i<=n; i++) {
    37             scanf("%s",str+1);
    38             for(int j=1; j<=n; j++) {
    39                 if(str[j]=='1')vet[i].push_back(j);
    40             }
    41         }
    42         memset(dist,0,sizeof(dist));
    43         memset(mark,false,sizeof(mark));
    44         bool flag=false;
    45         for(int i=1; i<=n; i++) {
    46             if(vet[i].size()) {
    47                 if(dfs(i)) {
    48                     flag=true;
    49                     break;
    50                 }
    51             }
    52         }
    53         printf("Case #%d: ",t++);
    54         flag?puts("Yes"):puts("No");
    55     }
    56     return 0;
    57 }
    View Code
  • 相关阅读:
    1
    可测试性
    爬取信件信息(更新)
    爬虫爬取疫情数据存到文件
    python分析三国演义中出现次数最多的词作词频统计
    实验三
    scala统计学生成绩
    对于OpenCV的访问Mat元素的探究
    OpenCV+VS2017+Nivdia(待更新)
    Window10 CUDA和cunn安装
  • 原文地址:https://www.cnblogs.com/wally/p/3115777.html
Copyright © 2011-2022 走看看