首页 > 其他分享 >图结构练习——BFSDFS——判断可达性

图结构练习——BFSDFS——判断可达性

时间:2023-04-20 22:40:02浏览次数:35  
标签:BFSDFS 示例 int MAX 练习 隘口 include 可达性


图结构练习——BFSDFS——判断可达性


Time Limit: 1000MS Memory limit: 65536K


题目描述


 


输入


第一行包含两个整数n,m(分别代表n个隘口,这些隘口之间有m个通道)。



下面m行每行包含两个整数a,b;表示从a出发有一条通道到达b隘口(注意:通道是单向的)。


输出


 


示例输入


2 1 1 2 2 1 2 1


示例输出


NO YES


提示


 


来源


 赵利强


示例程序



 #include<stdio.h>  
 #include <stdlib.h>  
 #include<memory.h>  
 #define MAX 1000  
 int map[MAX][MAX],v[MAX];  
 int n,m;  
 void DFS(int x)  
 {  
 int i;  
       v[x] = 1;  
 for(i=1;i<=n;i++)  
      {  
 if(!v[i] && map[x][i]==1)  
         {  
             DFS(i);  
         }  
      }  
 }  
 int main()  
 {  
 int x,i,y;  
 while(scanf("%d%d",&n,&m)!=EOF)  
 {  
 for(i=1;i<=n;i++)  
 {  
     v[i] = 0;  
 }  
 for(i=0;i<m;i++)  
 {  
 scanf("%d%d",&x,&y);  
 map[x][y] = 1;  
 }  
 DFS(n);  
 if(v[1]==1)  
 {  
 "YES\n");  
 }  
 else  
 {  
 "NO\n");  
 }  
 memset(v,0,sizeof(v));  
 memset(map,0,sizeof(map));  
 }  
 return 0;  
 }  

标签:BFSDFS,示例,int,MAX,练习,隘口,include,可达性
From: https://blog.51cto.com/u_14834528/6210801

相关文章

  • 团体天梯练习 L2-042 老板的作息表
    L2-042老板的作息表新浪微博上有人发了某老板的作息时间表,表示其每天\(4:30\)就起床了。但立刻有眼尖的网友问:这时间表不完整啊,早上九点到下午一点干啥了?本题就请你编写程序,检查任意一张时间表,找出其中没写出来的时间段。输入格式:输入第一行给出一个正整数\(N\),为作息表......
  • SQL——练习:往下展开BOM
    --练习:往下展开BOMIFEXISTS(SELECT*FROMtempdb.dbo.sysobjectsWHEREid=OBJECT_ID(N'tempdb.dbo.#temp_bom'))--是否存在该临时表DROPTABLE#temp_bom--存在则删除CREATETABLE#temp_bom--创建临时表(ROOT_ITEM_IDUNIQUEIDENTIFIER,......
  • 24道Python面试练习题
    1.简述函数式编程答:在函数式编程中,函数是基本单位,变量只是一个名称,而不是一个存储单元。除了匿名函数外,Python还使用fliter(),map(),reduce(),apply()函数来支持函数式编程。2.什么是匿名函数,匿名函数有什么局限性答:匿名函数,也就是lambda函数,通常用在函数体比较简单的函数上。......
  • 团体天梯练习 L2-039 清点代码库
    L2-039清点代码库上图转自新浪微博:“阿里代码库有几亿行代码,但其中有很多功能重复的代码,比如单单快排就被重写了几百遍。请设计一个程序,能够将代码库中所有功能重复的代码找出。各位大佬有啥想法,我当时就懵了,然后就挂了。。。”这里我们把问题简化一下:首先假设两个功能模块......
  • 团体天梯练习 L2-038 病毒溯源
    L2-038病毒溯源病毒容易发生变异。某种病毒可以通过突变产生若干变异的毒株,而这些变异的病毒又可能被诱发突变产生第二代变异,如此继续不断变化。现给定一些病毒之间的变异关系,要求你找出其中最长的一条变异链。在此假设给出的变异都是由突变引起的,不考虑复杂的基因重组变异......
  • 团体天梯练习 L2-037 包装机
    L2-037包装机一种自动包装机的结构如图1所示。首先机器中有\(N\)条轨道,放置了一些物品。轨道下面有一个筐。当某条轨道的按钮被按下时,活塞向左推动,将轨道尽头的一件物品推落筐中。当\(0\)号按钮被按下时,机械手将抓取筐顶部的一件物品,放到流水线上。图2显示了顺序按下按......
  • 福建省练习题
    A-1:登录安全加固(windows、linux)1.密码策略(windows、linux)(1)最小密码长度不少于8个宁符、密码最短使用期限30天:linuxcd/etc/vimlogin.defs/PASS修改PASS_MIN_DAYS30cd/etc/pam.dvimcommon-passwordpassword[success=1default=ignore]pam_unix.soo......
  • 练习题
    一、问题描述:有一对兔子,从出生的第三个月起每个月都生一对兔子。小兔子长到第三个月后每个月又生一对兔子,假设所有的兔子都不死,问个月内每个月的兔子总数为多少?二、设计思路:1、定义一个)numI]来记录每个域兔子的数目,定义i为月数,定义a为每月兔子的数目;2、从第三个月开始,每月......
  • 第六天练习(学习PTA题目的标准答案以及复习string函数知识)
    #include<iostream>#include<string>usingnamespacestd;boolcheck(strings){intp_pos=-1,t_pos=-1;intp_count=0,t_count=0;for(inti=0;i<s.size();i++){if(s[i]=='P'){i......
  • 使用SAX读取XML文件--(SAX的基础语法练习)
    SAX的基本知识:XML的SAX解析: DOM解析原理:一次性把XML文档加载进内存,然后在内存中构建Document树,对内存要求比较高。       DOM解析缺点:不适合读取大容量的XML文件,容易导致内存溢出。 SAX解析原理:加载一点,读取一点,处理一点,对内存要求比较低。  SAX解析工具:Sun公司提......