【题目大意】:
就是有n个牛,有f种食物和d种饮料,每个牛喜欢一个或多个食物和饮料,但是所有的食物和饮料每种都只有一个,问最多可以满足多少头牛的需要。
【题目分析】:
其实这个是很简单的,很明显的网络流模型,构图方法是把一头牛拆成两个点,两边分别是食物和饮料,然后把食物和左面的那一排牛连接在一起,右面的那一排牛和饮料连接在一起,两头牛拆开的点之间再连一条边。加上超级源点和所有食物相连,所有饮料和超级汇点相连。所有边上的容量都是1。然后求最大流就可以了。
【代码】:
【题目大意】:
就是有n个牛,有f种食物和d种饮料,每个牛喜欢一个或多个食物和饮料,但是所有的食物和饮料每种都只有一个,问最多可以满足多少头牛的需要。
【题目分析】:
其实这个是很简单的,很明显的网络流模型,构图方法是把一头牛拆成两个点,两边分别是食物和饮料,然后把食物和左面的那一排牛连接在一起,右面的那一排牛和饮料连接在一起,两头牛拆开的点之间再连一条边。加上超级源点和所有食物相连,所有饮料和超级汇点相连。所有边上的容量都是1。然后求最大流就可以了。
【代码】: