博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj1422_有向图最小路径覆盖数
阅读量:5204 次
发布时间:2019-06-13

本文共 1065 字,大约阅读时间需要 3 分钟。

这个题的题意是:在一个城镇中有路口和街道,这些街道是单向的并且不会形成环。每一个路口都会降落一名士兵,这些士兵会沿着街道的方向走。求走完所有路口所需要最少的士兵个数。

归纳这个题可得为,有向无环图的最小路径覆盖数,可以通过匈牙利算法求得。

在建图的过程中,跟无向图的建图类似,但是单向的。

以下是代码:

 

View Code
1 #include 
2 #include
3 #include
4 using namespace std; 5 6 bool array[121][121]; 7 int res[121]; 8 bool use[121]; 9 int v1,v2;10 11 bool find(int i)12 {13 int j;14 for(j=1;j<=v2;j++)15 {16 if(array[i][j] && !use[j])17 {18 use[j]=true;19 if(res[j]==0 || find(res[j]))20 {21 res[j]=i;22 return true;23 }24 }25 }26 return false;27 }28 29 int main()30 {31 int num;32 int insec,street;33 int i,m,n;34 int ans;35 scanf("%d",&num);36 while(num--)37 {38 ans=0;39 memset(array,false,sizeof(array));40 memset(res,0,sizeof(res));41 scanf("%d%d",&insec,&street);42 43 for(i=0;i

 

转载于:https://www.cnblogs.com/pushing-my-way/archive/2012/07/19/2599432.html

你可能感兴趣的文章
session token两种登陆方式
查看>>
C# ArrayList
查看>>
IntelliJ IDEA 12集成Tomcat 运行Web项目
查看>>
java,多线程实现
查看>>
个人作业4-alpha阶段个人总结
查看>>
android smack MultiUserChat.getHostedRooms( NullPointerException)
查看>>
递归-下楼梯
查看>>
实用的VMware虚拟机使用技巧十一例
查看>>
监控工具之---Prometheus 安装详解(三)
查看>>
Azure Iaas基础之---创建虚拟机
查看>>
不错的MVC文章
查看>>
网络管理相关函数
查看>>
IOS Google语音识别更新啦!!!
查看>>
20190422 T-SQL 触发器
查看>>
[置顶] Linux终端中使用上一命令减少键盘输入
查看>>
poj1422_有向图最小路径覆盖数
查看>>
BootScrap
查看>>
[大牛翻译系列]Hadoop(16)MapReduce 性能调优:优化数据序列化
查看>>
HTML&CSS常见问题整理(五)
查看>>
Intellij idea
查看>>