gpt4 book ai didi

算法 : Letters and envelopes pairing

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:38:17 26 4
gpt4 key购买 nike

免责声明:这不是任何类型的作业,这个问题只是在我浏览所有圣诞贺卡时想到的

问题如下:我们有 M 个信封和 N 个字母,每个字母都被描述为一对正整数。信封和信件都是长方形的,显然可以旋转。如果两个尺寸都小于或等于信封的尺寸,则一封信可以装入信封。目标是找到最大的信封-字母匹配。

该问题很容易转换为最大二分匹配问题,为此存在一个在 O(sqrt(M+N) * MN) 中运行的算法(Hopcroft-Karp,转换在 O(MN))。我试图想出一个贪心算法或动态方法,但我还没有找到。

您知道任何更快的解决方案吗?

最佳答案

以下“贪婪”类型的方法可能会有所帮助。

定义 m[i] 为包络 i 的两个整数中的最小值。

mins = distinct values of m[i], in increasing order
letters_to_match = all letters
for min in mins:
envs = envelopes i with m[i] == min
match letters_to_match with envs
remove matched letters from letters_to_match

关于算法 : Letters and envelopes pairing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20927183/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com