#P2857. [USACO06FEB] Steady Cow Assignment G
[USACO06FEB] Steady Cow Assignment G
Description
农夫约翰的 头牛()各自居住在 个谷仓中的一个(),当然,谷仓的容量是有限的。有些牛非常喜欢她们当前的谷仓,而有些则不太开心。
FJ 想要重新安排这些牛,使得牛群的快乐程度尽可能均衡,即使这意味着所有的牛都讨厌她们被分配的谷仓。
每头牛都会告诉 FJ 她对谷仓的偏好顺序。牛对特定分配的快乐程度是她对该谷仓的排名。你的任务是找到一种将牛分配到谷仓的方法,使得没有谷仓的容量被超出,并且牛给她们被分配的谷仓的排名范围(即最高排名谷仓和最低排名谷仓之间的正差加一)的大小尽可能小。
Input Format
第 1 行:两个用空格分隔的整数, 和
第 2 行到第 行:每行包含 个用空格分隔的整数,正好是 的某种顺序排列。第 行的第一个整数是第 头牛最喜欢的谷仓的编号,第二个整数是第 头牛次喜欢的谷仓的编号,依此类推。
第 行: 个用空格分隔的整数,分别是第一个谷仓的容量,第二个谷仓的容量,依此类推。这些数字的总和保证至少为 。
Output Format
第 1 行:一个整数,牛给她们被分配的谷仓的排名范围的最小值,包括端点。
6 4
1 2 3 4
2 3 1 4
4 2 3 1
3 1 2 4
1 3 4 2
1 4 2 3
2 1 3 2
2
Hint
样例解释:
每头牛可以被分配到她们的第一或第二选择:谷仓 1 得到牛 1 和 5,谷仓 2 得到牛 2,谷仓 3 得到牛 4,谷仓 4 得到牛 3 和 6。 (由 ChatGPT 4o 翻译)
京公网安备 11011102002149号