二分图匹配练习题_第1页
二分图匹配练习题_第2页
二分图匹配练习题_第3页
二分图匹配练习题_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、奶牛分配(stall4.pas/in.out)描述农夫约翰上个星期刚刚建好了他的新牛棚,他使用了最新的挤奶技术。不幸的是,由于工程问题,每个牛栏都不一样。第一个星期,农夫约翰随便地让奶牛们进入牛栏,但是问题很快地显露出来:每头奶牛都只愿意在她们喜欢的那些牛栏中产奶。上个星期,农夫约翰刚刚收集到了奶牛们的爱好的信息(每头奶牛喜欢在哪些牛栏产奶)。一个牛栏只能容纳一头奶牛,当然,一头奶牛只能在一个牛栏中产奶。 给出奶牛们的爱好的信息,计算最大分配方案。 输入格式第一行 两个整数,N (0 = N = 200) 和 M (0 = M = 200) 。N 是农夫约翰的奶牛数量,M 是新牛棚的牛栏数量。

2、 第二行到第N+1行 一共 N 行,每行对应一只奶牛。第一个数字 (Si) 是这头奶牛愿意在其中产奶的牛栏的数目 (0 = Si = M) 。后面的 Si 个数表示这些牛栏的编号。牛栏的编号限定在区间 (1.M) 中,在同一行,一个牛栏不会被列出两次。 输出格式只有一行。输出一个整数,表示最多能分配到的牛栏的数量。 SAMPLE INPUT 5 52 2 53 2 3 42 1 53 1 2 51 2 SAMPLE OUTPUT 4丘比特的烦恼(Cupid.pas/in/out)随着社会的不断发展,人与人之间的感情越来越功利化。最近,爱神丘比特发现,爱情也已不再是完全纯洁的了。这使得丘比特很是

3、苦恼,他越来越难找到合适的男女,并向他们射去丘比特之箭。于是丘比特千里迢迢远赴中国,找到了掌管东方人爱情的神月下老人,向他求教。月下老人告诉丘比特,纯洁的爱情并不是不存在,而是他没有找到。在东方,人们讲究的是缘分。月下老人只要做一男一女两个泥人,在他们之间连上一条红线,那么它们所代表的人就会相爱无论他们身处何地。而丘比特的爱情之箭只能射中两个距离相当近的人,选择的范围自然就小了很多,不能找到真正的有缘人。丘比特听了月下老人的解释,茅塞顿开,回去之后用了人间的最新科技改造了自己的弓箭,使得丘比特之箭的射程大大增加。这样,射中有缘人的机会也增加了不少。情人节(Valentines day)的午夜零

4、时,丘比特开始了自己的工作。他选择了一组数目相等的男女,感应到他们互相之间的缘分大小,并依此射出了神箭,使他们产生爱意。他希望能选择最好的方法,使被他选择的每一个人被射中一次,且每一对被射中的人之间的缘分的和最大。当然,无论丘比特怎么改造自己的弓箭,总还是存在缺陷的。首先,弓箭的射程尽管增大了,但毕竟还是有限的,不能像月下老人那样,做到“千里姻缘一线牵”。其次,无论怎么改造,箭的轨迹终归只能是一条直线,也就是说,如果两个人之间的连线段上有别人,那么莫不可向他们射出丘比特之箭,否则,按月下老人的话,就是“乱点鸳鸯谱”了。作为一个凡人,你的任务是运用先进的计算机为丘比特找到最佳的方案。输入文件格式

5、:输入文件第一行为正整数k,表示丘比特之箭的射程,第二行为正整数n(n30),随后有2n行,表示丘比特选中的人的信息,其中前n行为男子,后n行为女子。每个人的信息由两部分组成:他的姓名和他的位置。姓名是长度小于20且仅包含字母的字符串,忽略大小写的区别,位置是由一对整数表示的坐标,它们之间用空格分隔。格式为Name x y。输入文件剩下的部分描述了这些人的缘分。每一行的格式为Name1 Name2 p。Name1和Name2为有缘人的姓名,p是他们之间的缘分值(p为小于等于255的正整数)。以一个End作为文件结束标志。每两个人之间的缘分至多只被描述一次。如果没有被描述,则说明他们缘分值为1。

6、输出文件格式:输出文件仅一个正整数,表示每一对被射中的人之间的缘分的总和。这个和应当是最大的。输入样例(cupid.in):230 0 Adam1 1 Jack0 2 George1 0 Victoria0 1 Susan1 2 CathyAdam Cathy 100Susan George 20George Cathy 40Jack Susan 5Cathy Jack 30Victoria Jack 20Adam Victoria 15End输出样例(cupid.out):65糊涂的记者 (sign.pas/in/out)问题描述:在如今的信息社会中,时间-就是生命,对于记者们来说,如何以最

7、快的速度传递消息就显得十分重要了,而为了尽快记录消息内容,速记也是必不可少的。速记就是用一些简单且特殊的符号表示一定的含义,具体如何对应依个人习惯而定,没有一种固定的表示方法。 Tom是一名报社的新闻记者,常常马不停蹄的跟着新闻跑,有时只能随手记下采访的内容,让人送回报社,而自己又奔赴下一个现场。不过Tom是一个糊涂的记者,有时忙中出错,把用自己的速记符号写的内容直接传回报社。因为一时联系不上Tom,但这条新闻又十分重要,要赶着在当天的报纸排版前整理出来,于是Tom的同事们只好来猜测Tom的速记符号的意思。幸运的是Tom的同事们与他共事的时间也不短了,对于Tom的一些用词情况有一定的了解,经过

8、讨论,他们列出了一张可能性表来表示每一个速记符号可能与哪些单词相对应,并列出了对应的可能性有多大。 你的任务是:根据Tom的同事们提供的可能性表,找出一种可能性最大的速记符号与单词的对应方法(可能性应该相乘来计算)。 注意:每一个速记符号有且只有一个单词与其对应,每一个单词有不超过一个速记符号与其对应(可能没有速记符号与之对应)。 输入格式:文件的第一行有两个整数,分别为速记符号的个数n(1=n=100)和单词总m (1=m=500)。 从第1行到第n+1行为每个速记符号可能对应的单词及其可能性。 第i+1(1=i=n)行的第一个数Ci表示第i个速记符号可能与Ci个单词相对应,后面有Ci个数对

9、(Nik,Rik)(1=k=Ci),表示第i个速记符号与第Nik个单词相对应的可能性为Rik(Rik为大于0小于1的实数)。 输入样例: 输出格式: 输出文件仅包含一行,若有解则输出一个实数即最大的可能性,保留四位有效数字(四舍五入),若无解则输出NO ANSWER。 (当可能性大于1e-12时才被视为有解) 输出样例: 注意: 由于实数的精度误差,使用PASCAL的选手请采用Borland Pascal编译,使用C+的选手请采用djgpp编译。信与信封问题(letter.pas/in/out)问题描述:John先生晚上写了n封信,并相应地写了n个信封将信装好,准备寄出。但是,第二天John的儿子Small John将这n封信都拿出了信封。不幸的是,Small John无法将拿出的信正确地装回信封中了。编程任务:将Small John所提供的n封信依次编号为1,2,n;且n个信封也依次编号为1,2,n。假定Small John能提供一组信息:第i封信肯定不是装在信封j中。请编程帮助Small John,尽可能多地将信正确地装回信封。数据输入:n文件的第一行是一个整数n(n100)。信和信封依次编号为1,2,n。n接下来的各行中每行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论