题意:

有m个男孩和n个女孩,每个人都有一个舞蹈熟练度,用一个不超过100的正整数来表示。

一个男孩和一个女孩能够结为舞伴当且仅当两人的熟练度相差不超过1.

问最多能结成多少对舞伴

分析:

这是一个二分图最大匹配问题,如果男孩和女孩满足条件则添加一条边,然后用匈牙利算法求最大匹配即可。

这是匈牙利算法的模板

http://www.cnblogs.com/AOQNRMGYXLMV/p/3950653.html

题解中还给了一种贪心的解法。将两边的熟练度排序,然后匹配。

 1 #include <cstdio>
 2 #include <cmath>
 3 #include <cstring>
 4 #include <algorithm>
 5 using namespace std;
 6
 7 const int maxn = 100 + 10;
 8 int a[maxn], b[maxn], line[maxn][maxn], used[maxn], girl[maxn];
 9 int n, m;
10
11 int main()
12 {
13     int cnt = 0;
14     scanf("%d", &n);
15     for(int i = 0; i < n; ++i)  scanf("%d", &a[i]);
16     scanf("%d", &m);
17     for(int i = 0; i < m; ++i)  scanf("%d", &b[i]);
18     sort(a, a + n);
19     sort(b, b + m);
20     for(int i = 0; i < n; ++i)
21         for(int j = 0; j < m; ++j)
22         {
23             if(abs(a[i] - b[j]) <= 1)
24             {
25                 cnt++;
26                 b[j] = 1000;        //标记这个妹子有舞伴了
27                 break;
28             }
29         }
30
31     printf("%d\n", cnt);
32
33     return 0;
34 }

代码君

转载于:https://www.cnblogs.com/AOQNRMGYXLMV/p/4105513.html

CodeForces 489B (贪心 或 最大匹配) BerSU Ball相关推荐

  1. CF 277.5 B.BerSU Ball 二分图的最大匹配 模版题

    题意:求二分图的最大匹配数量 模版如下: //二分图匹配(匈牙利算法的DFS实现) //初始化:g[][]两边顶点的划分情况 //建立g[i][j]表示i->j的有向边就可以了,是左边向右边的匹 ...

  2. 贪心 ---- Codeforces Global Round 8,B. Codeforces Subsequences[贪心,贪的乘法原理]

    题目链接 给出字符串,统计子串(子串字母可以跳跃)是codeforces的数量. 本题要求,给出子串最少数量k,构造字符串s,要求字符串s包含的字母数量最少,输出这个最少的字符串s. 题目要求是至少有 ...

  3. CodeForces - 93B(贪心+vectorpairint,double +double 的精度操作

    题目链接:http://codeforces.com/problemset/problem/93/B B. End of Exams time limit per test 1 second memo ...

  4. POJ - 3614 Sunscreen(贪心/二分图最大匹配-多重匹配/网络流-最大流)

    题目链接:点击查看 题目大意:给出n头奶牛,奶牛们现在要晒太阳,每头奶牛需要[l,r]区间内的光照强度,现在有m种防晒霜,每种防晒霜可以让奶牛接受到val数值的光照强度,然后每种防晒霜只有num个,现 ...

  5. Codeforces 985C (贪心)

    传送门 题面: C. Liebig's Barrels time limit per test 2 seconds memory limit per test 256 megabytes input ...

  6. Minimize the Permutation CodeForces - 1256(贪心)

    题意: q次询问,每次询问给你长度为n的排列,然后你每次可以选择一个位置i和i+1的数字进行交换.但是每个位置只能交换一次,问你反转若干次后,这个排列最小是多少? 题目: You are given ...

  7. Minimizing Difference CodeForces - 1244E(贪心题)

    题目 题意 官方题解: 百度翻译 思路 ac代码 题意 给出一列数,至多n个操作使其中的数+1或-1,要求得到最小的差值(最大值-最小值): You are given a sequence a1_{ ...

  8. Serval and Parenthesis Sequence CodeForces - 1153C 贪心

    题意:给出一个由"(",")","?"三种字符构成的序列,让我们把其中的问号替换成左右括号,使得整个序列变成一个完整地括号序列,也就是括号匹 ...

  9. CodeForces - 1089L 贪心

    The kingdom of Lazyland is the home to nn idlers. These idlers are incredibly lazy and create many p ...

  10. Too Many Segments (easy version) CodeForces - 1249D1(贪心+差分)

    题意 给多组线段,而每一个点的覆盖次数不超过K,每次可去除一个线段,问最少去多少线段以及线段的位置. The only difference between easy and hard version ...

最新文章

  1. 测试算法(性能)的工具类
  2. java语言与www技术形成性考核册_电大Java语言与WWW技术形成性考核程序题
  3. 第三章、Data语意学
  4. Windows7跑星际争霸问题解决——为了继续星际争霸的辉煌!
  5. javascript --- XMLHttp2级、CORS(跨域资源共享)
  6. YOLO:实时目标检测
  7. 基于JAVA+SpringMVC+Mybatis+MYSQL的相亲管理系统
  8. 大数据处理与分析方向主要干什么_不了解干法制砂?6个影响干法制砂效果的主要因素及干法制砂生产加工7大技术要点分析...
  9. java数组循环动态赋值_04、Java基础语法(循环嵌套、break、continue、方法、方法的重载、数组动态初始化)...
  10. mysql 常用操作(整理)
  11. Hexo Next底部powered by的logo栏更改以及注意事项(附官方文档,文末有福利链)
  12. java 数组随机抽取_Java利用数组随机抽取幸运观众
  13. 输出100以内的所有素数
  14. opencv安装与配置vs2019
  15. 應用程式中發生伺服器錯誤
  16. java和ssm开发的医院体检预约系统有论文
  17. 智能管家---11. 用户重置密码功能实现(忘记密码或重置)
  18. 双赞的一体机主板能应用到哪些行业?
  19. 我的世界JAVA挂机杀怪有经验_5分钟教你打造mc最简单的刷经验机!挂机就能无限经验?...
  20. 简单易懂之什么是重排和重绘?

热门文章

  1. 在MacOS系统中如何自定义屏幕保护程序?
  2. 英特尔推出49量子比特芯片以加入量子统治权大战
  3. Learn RxJava
  4. python中的JSON(1)
  5. [hadoop读书笔记] 第五章 MapReduce工作机制
  6. mongo-java-driver 的简单使用(1)
  7. JQuery基础学习笔记(1)
  8. linux运维(一)
  9. R语言利器之ddply
  10. 再见收费的 XShell,我改用国产良心工具,完全免费!