问题描述: 写出求一个二分图的最大匹配的算法,用c++语言

问题描述:第二次世界大战时期,英国皇家空军从沦陷国征募了大量外籍飞行员。由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的2名飞行员,其中1名是英国飞行员... 问题描述:
第二次世界大战时期,英国皇家空军从沦陷国征募了大量外籍飞行员。由皇家空军派出
的每一架飞机都需要配备在航行技能和语言上能互相配合的2 名飞行员,其中1 名是英国飞行员,另1 名是外籍飞行员。在众多的飞行员中,每一名外籍飞行员都可以与其他若干名英国飞行员很好地配合。如何选择配对飞行的飞行员才能使一次派出最多的飞机。对于给定的外籍飞行员与英国飞行员的配合情况,试设计一个算法找出最佳飞行员配对方案,使皇家空军一次能派出最多的飞机。

编程任务:
对于给定的外籍飞行员与英国飞行员的配合情况,编程找出一个最佳飞行员配对方案,
使皇家空军一次能派出最多的飞机。

数据输入:
由文件input.txt提供输入数据。文件第1 行有2 个正整数m和n。n是皇家空军的飞行员总数(n<100);m是外籍飞行员数。外籍飞行员编号为1~m;英国飞行员编号为m+1~n。
接下来每行有2 个正整数i和j,表示外籍飞行员i可以和英国飞行员j配合。文件最后以2
个-1 结束。

结果输出:
程序运行结束时,将最佳飞行员配对方案输出到文件output.txt 中。第1 行是最佳飞行员配对方案一次能派出的最多的飞机数M。接下来M 行是最佳飞行员配对方案。每行有2个正整数i和j,表示在最佳飞行员配对方案中,飞行员i和飞行员j 配对。

如果所求的最佳飞行员配对方案不存在,则输出‘No Solution!’。

输入文件示例:
input.txt
5 10
1 7
1 8
2 6
2 9
2 10
3 7
3 8
4 7
4 8
5 10
-1 -1

输出文件示例:
output.txt
4
1 7
2 9
3 8
5 10
展开
 我来答
黑海豹子
2012-07-03 · TA获得超过242个赞
知道小有建树答主
回答量:206
采纳率:100%
帮助的人:211万
展开全部
这个应该是你的作业吧,呵呵,个人建议:学习c、c++语言最好是自己动手去做,在学校的时间是宝贵的,要想做个好程序员就得在学校打好基础,这样工作才会有保障,这个题目应该是你的作业部分吧,尽量自己去完成吧,完成后你会发现你有很大的收获,不仅仅是知识上的,更多的是学习乐趣和方法,作为一个过来人和你分享下个人经验,祝你学习进步,呵呵,如果是中间出现困难了,可以和大家一起交流
追问
那我问一个问题哦~就是在c++中怎么实现由文件input.txt提供输入数据和方案输出到文件output.txt 中?怎么怎么编都是open error啊?
追答
稍等,我给你写个例子
#include
#include
#include
using namespace std;
int main()
{
ifstream in("input.txt");
ofstream out("output.txt");
for (string str; getline(in,str);)
{
out<<str<<endl;
}
system("pause");
return 0;
}

这是一个简单的例子,自己先新建一个input.txt文件,运行就可以了
xuuweiiiyuannn
2012-07-03 · TA获得超过256个赞
知道小有建树答主
回答量:292
采纳率:100%
帮助的人:112万
展开全部
tyk,d
追问
这个事什么意思啊?
追答
szz
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
shwj556516
2012-07-03 · 贡献了超过112个回答
知道答主
回答量:112
采纳率:0%
帮助的人:18.1万
展开全部
将被
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式