algorithm - 当 N 固定且 k<=N 时 N 模 k 的最大化
问题描述
假设有N个收藏品。您可以召集最少 1 个人到最多k个人为您收集这些收藏品。您呼叫的人数将在N的价值可能的最高权益中平等地在他们之间分享一些收藏品。您将获得剩余的收藏品。优化呼叫的人数,以便您获得最大可能的人数。收藏品,并输出最大可能的收藏品数量你可以得到。例如,如果有 11 个收藏品,您最多可以调用 3 个人,那么您最多可以获得 2 个收藏品。这是因为如果你打电话给 3 个人,他们会在 11 个人中以最高的权益分配收藏品,即 3。所以你会留下 2 个收藏品。
解决这个问题的一个明显方法是设置一个循环运行直到k,并存储最大可能的N 模 k。但这是一种直截了当的方法,我想通过在N 固定和k<=N的约束下最大化 N 模 k来提高代码效率。有人可以为我提供优化上述问题的可能方法吗?
PS:我没有包含任何代码,因为直率的方法非常明显,我正在寻找一种方法来解决我希望解决问题的方式,而不是代码。
解决方案
推荐阅读
- .net - Serilog 不从 json 获取控制台配置
- groovy - Proc Groovy 将较大的 XML 解析为 SAS
- pgadmin - 从 pgadmin 4.30 降级到 4.29 的问题
- oracle - 从声明块中获取结果集
- javascript - WebAudio 没有提供任何音频输出
- google-sheets - 如何计算列的平均值,然后将其包含在选择查询 Google 表格中,限制结果并过滤结果
- python - ModuleNotFoundError:没有名为“GPIO”的模块
- c - 如何使用结构指针和指定初始化来初始化 C 结构
- html - 我在 css 突出显示文本时遇到问题
- unity3d - 如何将 3D 元素添加到 Hololens 2 视野中