这题一看就是二分图匹配的裸题嘛
但是我现在在练习网络流那,要多练练网络流
于是用了dinic
但是不贴代码了
所以讲讲主要思路吧
建两个点,超级源点S,超级汇点T
然后每一张床都连向T一个流量为1的边
然后每一个和床的主人熟悉的人(包括本身)连向这些床,流量为1
然后S连向每一个人(不回家住或者外地人)一条流量为1的边
然后跑一边最大流就可以了
这题一看就是二分图匹配的裸题嘛
但是我现在在练习网络流那,要多练练网络流
于是用了dinic
但是不贴代码了
所以讲讲主要思路吧
建两个点,超级源点S,超级汇点T
然后每一张床都连向T一个流量为1的边
然后每一个和床的主人熟悉的人(包括本身)连向这些床,流量为1
然后S连向每一个人(不回家住或者外地人)一条流量为1的边
然后跑一边最大流就可以了