![]() |
1
5
首先,每项都打一分。这是为了满足您的要求,即所有项目都获得分数。然后得到每个项目总重量的百分比,并奖励它剩余的百分比(四舍五入)。 会有一部分点遗留下来。按项目的小数部分大小对项目集进行排序,然后按从最大小数部分到最小小数部分的顺序一次分配剩余的点。 所以,如果一个项目的权重为12,而所有项目的总权重为115,你首先会给它1分。如果还有4个项目的话,那么在发放完最低分后还有110分。然后你会给这个项目10分,因为它占总重量的百分比是110的9.58%和10.538的9.58%。然后你会根据.538进行分类,如果它靠近顶端,可能会被撞到11。 |
![]() |
2
3
考虑到两个约束total==100每个项目>0无法解决101个案例,因此,为了保持稳健,您必须获得解决方案。这是业务问题,不是技术问题。 最低得分案例实际上也是一个商业问题。很明显,如果你每项至少发放5分,你的结果的意义与最低1分有很大不同——低分、非零分和低分之间的差距可能会被压缩。因此,您真的应该从系统用户那里获得清晰的信息,而不仅仅是选择一个数字:他们将如何使用这些数据? |
![]() |
feasega · 聚合物模拟-2个节点之间的最短路线,适用于所有节点 6 月前 |
![]() |
Alisa Petrova · 在有向图中更改一对顶点以创建循环 6 月前 |
![]() |
b39b332d · 使用C++标准库实现高效间隔存储 10 月前 |
![]() |
Paul C · 在维基百科上,将二叉搜索树转换为排序链表的算法是否存在错误? 10 月前 |
![]() |
ABGR · 二叉树的直径——当最长路径不通过根时的失败案例 10 月前 |
![]() |
EpicAshman · 数独棋盘程序中同一列和同一行出现两次的数字 10 月前 |