HDU 6667 Roundgod and Milk Tea (思维)】的更多相关文章

2019 杭电多校 8 1011 题目链接:HDU 6667 比赛链接:2019 Multi-University Training Contest 8 Problem Description Roundgod is a famous milk tea lover at Nanjing University second to none. This year, he plans to conduct a milk tea festival. There will be \(n\) classes…
hdu题面 Time limit 6000 ms Memory limit 131072 kB OS Windows Source 2019 Multi-University Training Contest 8 吐槽 比赛时候一眼网络流,但数据范围显然不行,又看到这道题提交人数贼多,于是转向尝试各种贪心,什么两边都取最大值.一边取最大值另一边取最小值.两边都取最小值--很多贪心方法都自己出数据hack掉了,想不到怎么hack的思路再写网络流生成随机数据对拍,拍几百组没错再交,但还是WA个不停-…
题意: 有若干个班,每个班有些人要喝奶茶,也提供一些奶茶,一人喝一杯,但是自己班的人不能喝自己班的奶茶,求最多能有多少人喝上奶茶. 题解: 典型的二分图匹配问题,学生在左,奶茶在右,学生和非自己班的奶茶连边. 因为班级数1e6,每个班级有1e9个奶茶或学生,直接按照上述建边跑匈牙利算法会T 考虑霍尔结婚定理:点集S,点集T,边集E,其中E中的边所连两点一点在S中,一点在T中,如果S中的k个点各自经过E与T中k个不同的点相连,则称形成了一个大小为k的匹配. k=|S|则称为完美匹配 对于S的任意子…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6667 题意: 有 n个班级,每个班级有a个人.b个奶茶,每个班的人不能喝自己的奶茶,只能喝别人班的奶茶,问你最多有多少人喝到奶茶. 思路: 明显一道贪心题: n=3 3   4  min=3 4   2  min=2 4   2  min=2 首先根据min值从大到小排序(先消除大的更优),两个min值是肯定可以消掉一个的,ans+=min*2,而且消到最后最多只有一个a.b都不为0. 然后就是要先…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6667 题目大意是说n个班级,每个班级有ai人和bi杯茶,每个人只能喝其他班的茶并且只能喝一杯.问最多有多少人可以喝茶. 读完题就觉得是网络流or二分图,然后发现数据范围就萎了,开始想怎么转化模型,因为题目实际就是求每个人连其他班的茶之后跑二分图最大匹配. 然后想到了hall定理和推论,好像对于线性求解二分图蛮有帮助的,公式写出来大致就可以明白了. PS:|X|为点集X的点数 hall定理: 二分图G…
题目大意:给你ai,bi,限制ai不能流向bi,求最大流 题解:贪心,对于第i个班级,考虑前i-1个班级匹配完剩余多少a,b,将这些ab对第i个班级进行贪心匹配 匹配完若第i个班级还有剩余的ab,考虑将前面的已匹配拆分 考虑如何拆分 若存在a1-b2这样一个匹配,那么可以将它拆开,并与aibi匹配成a1-bi,ai-b2,这样答案就多了1 于是可以想到每新贪心一个班级时,先用cnta和cntb进行贪心,若剩余ab,则在前面找已匹配进行拆分重新匹配使得答案增加 时间复杂度o(n) 代码: #inc…
题意:有n个班级,每个班级有a[i]个人,b[i]杯奶茶 每个人至多喝一杯奶茶,且不能喝自己班的 问能喝到奶茶的最多总人数 n<=1e6,a[i],b[i]<=1e9 思路: 做法一: #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef unsigned int uint; typedef unsigned long long ull; typedef pair<int,int&…
题目 以下不是KMP算法—— 以下是kiki告诉我的方法,好厉害的思维—— 就是巧用标记,先标记第一个出现的所有位置,然后一遍遍从标记的位置往下找. #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; int main() { ],shunxu; ]; scanf("%d",&t); while(t--) { memset(xiabiao,…
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4611 题意:给你一个N.A.B,要你求 AC代码: #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <cstdlib> #include <cmath> #include <vector> #include…
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5122 Problem Description Matt's friend K.Bro is an ACMer.Yesterday, K.Bro learnt an algorithm: Bubble sort. Bubble sort will compare each pair of adjacent items and swap them if they are in the wrong or…