前言:

匈牙利算法主要是解决二分图最大匹配问题,它用一句话总结就是“先到先得,能让就让”

这里是很板子裸匈牙利算法的一题,当然,比赛的题就没这么裸了,需要我们仔细观察。同裸的一题还有洛谷的
P3386 【模板】二分图最大匹配

过山车题目链接

题目:

思路

女生男生分别作为二分图的两部分,不能女生选女生男生选男生,显然是二分图的最大匹配。

代码

#include <bits/stdc++.h>
using namespace std;
const int maxn=5e2+10;
#define faster ios::sync_with_stdio(false);cin.tie(0),cout.tie(0)
int link[maxn][maxn],use[maxn],ptn[maxn];
int k,m,n;
bool find(int x){for (int i = 1; i <= n; ++i) {   //从第一个男生开始选择,直到女生愿意和当前这个男生坐并且这个男生这一轮没有被选择过if (link[x][i]&&!use[i]){use[i]=1;if (!ptn[i]|| find(ptn[i])){   //这个男生没有partner或者这个男生的partner可以腾出位置来ptn[i]=x;       //这个男生的partner就为当前这个女生return true;}}}return false;
}
int match(){int sum=0;for (int i = 1; i <= m; ++i) {  //对每个女生进行选择操作memset(use,0,sizeof use);  //use表示每一轮的男生是否被选择过if (find(i)) sum++;}return sum;
}
signed main(){faster;while (cin >> k && k){cin >> m >> n;memset(link,0,sizeof link);memset(ptn,0,sizeof ptn);for (int i = 0; i < k; ++i) {int x,y; cin >> x >> y;link[x][y]=1;}cout << match() << endl;}return 0;
}

杭电oj 2063 过山车(匈牙利算法)相关推荐

  1. 过山车java,杭电 acm 2063 ( 过山车 )

    Problem Description RPG girls今天和大家一起去游乐场玩,终于可以坐上梦寐以求的过山车了.可是,过山车的每一排只有两个座位,而且还有条不成文的规矩,就是每个女生必须找个个男生 ...

  2. 杭电OJ第11页2085~2089算法题(C语言)

    目录 2085.核反应堆 2086.A1 = ? 2087.剪花布条 2088.Box of Bricks 2089.不要62 2085.核反应堆 Problem Description 某核反应堆有 ...

  3. 杭电OJ第11页2075~2079算法题(C语言)

    目录 2075.A|B? 2076.夹角有多大 2077.汉诺塔IV 2078.复习时间 2079.选课时间 2075.A|B? Problem Description 正整数A是否能被正整数B整除, ...

  4. 杭电OJ第11页2035~2039算法题(C语言)

    目录 2035.人见人爱A^B 2036.改革春风吹满地 2037.今年暑假不AC 2038.Message 2039.三角形 2035.人见人爱A^B Problem Description 求A^ ...

  5. 杭电OJ第11页2065~2069算法题(C语言)

    目录 2065."红色病毒"问题 2066.一个人的旅行 2067.小兔的棋盘 2068.RPG的错排 2069.Coin Change 2065."红色病毒" ...

  6. 【ACM】杭电OJ 2063

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2063 借鉴:http://blog.sina.com.cn/s/blog_ac5ed4f30101ew ...

  7. HDOJ2063过山车 匈牙利算法

    Problem Description RPG girls今天和大家一起去游乐场玩,终于可以坐上梦寐以求的过山车了.可是,过山车的每一排只有两个座位,而且还有条不成文的规矩,就是每个女生必须找个个男生 ...

  8. 杭电OJ分类题目(4)-Graph

    原题出处:HDOJ Problem Index by Type,http://acm.hdu.edu.cn/typeclass.php 杭电OJ分类题目(4) HDU Graph Theory - U ...

  9. HDU杭电OJ经典100题2000-2099_Java版详细题解(持续更新)

    今年寒假打算用Java把杭电2000-2099全部AC(现在持续更新),如下是题目链接,之后是我的题解,全部做完后我会把所有AC的题解打包上传的 题号 题名 题号 题名 2000 ASCII码排序 2 ...

最新文章

  1. Vim 实用技术,第 3 部分: 定制 Vim
  2. 好文深思:1.3 万亿条数据查询,如何做到毫秒级响应?
  3. 母亲的牛奶 Mother's Milk
  4. 手写自己的MyBatis框架-V2.0参数处理
  5. 牛客网_PAT乙级_1027在霍格沃茨找零钱(20)
  6. js时间工具 MyTimeUtil.js
  7. 6/7 SELECT语句:过滤(正则表达式REGEXP)
  8. 设计模式——享元模式具体解释
  9. 解决ubuntu下不能mount windows 盘的问题
  10. python的dataframe的groupby_python pandas.DataFrame.groupby()方法详解
  11. pdf电脑地址转网络地址.txt
  12. 软工课后作业01 15100152
  13. 利用Matlab绘制图像中的某一行或者某一列的灰度曲线
  14. python用pyinstaller生成exe时报错 TypeError: an integer is required (got type bytes)
  15. MySql中PreparedStatement对象与Statement对象
  16. java 开源 邮件系统_Java架构师方案—简单的邮件系统(附完整项目代码)
  17. windows主题Mac OS 风格 BigSur主题美化
  18. 语音信号的LPC特征提取
  19. IAR For ARM 7.8下载地址
  20. 混乱与整齐-布局-PCB系列教程1-12

热门文章

  1. VQGAN2_latent diffusion model
  2. 计算机毕业设计 SSM+Vue租购汽车管理系统 车辆租赁类型管理系统 租车违章管理系统
  3. 软件著作权可以有几个作者?其保护作用是哪些?
  4. 计算机网络——奈氏准则(奈奎斯特定理)
  5. 2021年塔式起重机司机复审考试及塔式起重机司机模拟考试题库
  6. Android集成腾讯直播(无需后台配合一小时让你拥有直播APP)
  7. [2014年四川省选]简要题解
  8. 实战_瑞金医院MMC知识图谱大赛初赛
  9. 对话亚马逊CTO沃纳·威格尔,让我想到了王菲的三首歌……
  10. 砍竹子——二分,模拟