今天,在冬木市举行了一场盛大的舞会。参加舞会的有n 位男士,从 1 到 n 编号;有 m 位女士,从 1 到 m 编号。对于每一位男士,他们心中都有各自心仪的一些女士,在这次舞会中,他们希望能与每一位自己心仪的女士跳一次舞。同样的,对于每一位女士,她们心中也有各自心仪的一些男士,她们也希望能与每一位自己心仪的男士跳一次舞。在舞会中,对于每一首舞曲,你可以选择一些男士和女士出来跳舞。但是显然的,一首舞曲中一位男士只能和一位女士跳舞,一位女士也只能和一位男士跳舞。由于舞会的时间有限,现在你想知道你最少需要准备多少首舞曲,才能使所有人的心愿都得到满足?

因为同一首歌内,男生/女生只能接受一个邀约,所以最多需要多少首歌,就取决于最受欢迎的那个男/女生被多少人翻牌子。我们用一个二维矩阵\(D=(d_{i,j})\)记录,我们需要配对的男、女生。\(d_{i,j}=1\)表示我们需要将第\(i\)号男生和第\(j\)号女生进行配对,至于谁是谁的心动男/女生,我们管不着;\(d_{i,j}=0\)表示他们互不心动,但也不代表他们不会被配对上,有人跳舞总好过没有嘛。通过输入修改二维矩阵元素后,我们看第\(i\)行,1的个数\(c_i\)就是第i号男生受欢迎的程度,我们共需要\(c_i\)首歌才可以满足这个需求。所以我们按行、按列相加之后,就可以知道每个男生、女生的受欢迎程度。最终需要多少首歌,就取决于最受欢迎的那个人有多少个配对需求啦。

line = raw_input().split()

n, m = map(int, line)

like = [[0 for i in range(n)] for i in range(m)]

for i in range(n):

line = map(int, raw_input().split())

for j in range(1, line[0] + 1):

like[line[j]-1][i] = 1

for i in range(m):

line = map(int, raw_input().split())

for j in range(1, line[0] + 1):

like[i][line[j]-1] = 1

res1 = [0 for i in range(n)]

res2 = [0 for i in range(m)]

for i in range(n):

for j in range(m):

res1[i] += like[j][i]

for i in range(m):

for j in range(n):

res2[i] += like[i][j]

print max(res1 + res2)

java舞会配对程序_舞会心动男/女生配对问题相关推荐

  1. java舞会配对程序_校会·活动 | 舞会流程及配对方式大揭秘

    原标题:校会·活动 | 舞会流程及配对方式大揭秘 "May I Dance With You?" 春季联谊舞会进入倒计时1周 放下你的羞涩与顾虑 一周后 你能在舞池中伴着弦乐团现场 ...

  2. java编写应用程序_为您的Java应用程序编写数据驱动的测试

    java编写应用程序 JUnit是一个功能非常强大的测试框架,它不仅为其用户提供了编写快速简便的测试的功能,而且还为用户提供了扩展它并使其按其期望的方式工作的机会. 在JUnit之上构建了许多框架,这 ...

  3. 在JAVA中 以下程序_在Java中,以下程序的输出结果是()_学小易找答案

    [单选题]运行以下Java代码,说法正确的是( ). [单选题]在Java中,以下程序的输出结果是() [单选题]利用"出声"的方式向学生展示教师分析问题的过程与方法的教学方法是_ ...

  4. java编写应用程序_使用Java API编写应用程序

    java编写应用程序 总览 介绍 DB2JSON可用于DB2 Linux,Unix和Windows 10.5以及用于z / OS V3.1的IBM DB2 Accessories Suite与DB2 ...

  5. java数据类型入门程序_「JAVA零基础入门系列」Day3 Java基本数据类型

    前两篇已经将开发环境搭建完成,如果你已经按之前的教程按部就班的完成了部署,那么世界上最优秀的编程语言之一和世界上最优秀的IDE之一已经出现在你的电脑上(此处应有掌声),如果你还没入门,或者正在台阶上踱 ...

  6. java mvc 小程序_[Java教程]Spring MVC 的环境搭建和入门小程序

    [Java教程]Spring MVC 的环境搭建和入门小程序 0 2017-02-17 00:00:16 1.1.下载spring框架包. 1.1.1百度搜索Spring Framework. 进入s ...

  7. java恶作剧小程序_一个Java恶搞小程序

    运用Java程序控制某个应用程序的运行(以网易云音乐为例),步骤如下 1.建立bat文件分别是start.bat(控制程序的运行)和kill.bat(控制程序的结束): start.bat 的内容如下 ...

  8. vs怎么建java的控制台程序_像VS一样简单的打包“控制台”程序

    对于我一个不了解JAVA,没有相关生态圈的C#er, 自己要研究Scala真是困难重重,尤其在项目构建上真是感觉半瓶子醋难以入门. 一个VS控制台程序,build之后甚至不需要了解 ms build就 ...

  9. java web应用程序_如何构建Java Web 应用程序 - Spring Boot?

    Spring Framework 是可以帮助 Java 开发人员创建企业级应用程序的开源解决方案.构建在该平台基础之上的较热门项目之一是 Spring Boot,它提供一种简化的方法来创建独立的 Ja ...

最新文章

  1. HAProxy Keepalived L4-L7 高可用负载均衡解决方案
  2. Android7.1 Presentation双屏异显原理分析
  3. 基于python的性能测试工具–locust
  4. TensorFlow应用实战-17-Qlearning实现迷宫小游戏
  5. 羽枭android,【答疑】Unreal Engine 4 是怎样发布android的? - 视频教程线上学
  6. Style Lessons in Clarity and Grace (11th Edition)中文翻译
  7. NetBeans 时事通讯(刊号 # 127 - Dec 01, 2010)
  8. viiv个人计算机,欢娱尽情 欢跃平台PC导购
  9. 智能优化算法:水循环算法-附代码
  10. H3C交换机创建ssh用户登录和设置aux密码
  11. 《SPSS统计分析与行业应用实战》之P2P行业中的应用
  12. 四旋翼无人机原理以及组装过程
  13. Windows Server2012搭建邮件服务器
  14. 阿里云云数据库RDS基本介绍与购买流程(二十二)
  15. 台式机+笔记本的扩展模式+远程登录设置
  16. 自定义审批流程表设计
  17. c++实现图书管理系统v2.0
  18. WPF 设置属性“System.Windows.FrameworkElement.Style”时引发了异常
  19. Quality 是什么?
  20. day1-python猜单词游戏

热门文章

  1. 阿里巴巴集团主席马云演讲实录(图)
  2. java中三web_Java Web中的三大器
  3. 全志 A50/A133 新增驱动配置
  4. DBCO-Chondroitin DBCO-软骨素
  5. 搜索引擎蜘蛛算法与蜘蛛程序构架
  6. python123m与n的数学运算_python入门基础,全网最详细教程
  7. String类的方法摘要
  8. ZJOI2016一点也不好玩啊
  9. 软件测试费用是多少,国内软件检测机构排名
  10. iOS学习08代码1