头真的都挠秃了,向各位大佬求个思路 。

2020-09-28 11:31:16 +08:00
 overhell
/**
* 获取最大能组建项目部的数量 <br>
* 条件:
* 1. 1 个项目部最少需要 4 个不同岗位
* 2. 1 个人最多有 2 个不同岗位
* 3. 1 个人最多同时只能在 1 个项目部任职
*/
2972 次点击
所在节点    问与答
29 条回复
overhell
2020-09-28 15:02:58 +08:00
@raaaaaar 已经歪了 = =。
whileFalse
2020-09-28 15:13:00 +08:00
return 0 if people_num < 4 else people_num // 2 # 整除
overhell
2020-09-28 15:18:48 +08:00
@whileFalse 人员和人员的岗位是已知的 0 0
lidlesseye11
2020-09-28 15:21:37 +08:00
哈哈哈这楼歪的

遍历一遍,算出来每种岗有多少人能干,然后从人少的岗位开始排,优先排只有 1 个岗位的 /第 2 个岗位人多的人?
感觉很不严谨,但是一时半会儿也想不到反例。。坐等算法哥 /数学帝们出手

暴力法的话可以找出所有有 2 个不同岗位的人,分成 2^n 种情形讨论。。。—>
转化为 1 人 1 岗,1 部 4 岗的问题就不难了。。
2^n 次遍历途中缓存上这一次是几个 A 岗,几个 B 岗,。。。,几个 Z 岗,有重复的情形可以剪枝掉
overhell
2020-09-28 15:26:08 +08:00
@lidlesseye11 我开始也是这么想的 ,按岗位分组后,人员按岗位多的排序优先取,只有一个岗位的人优先用掉不影响其他岗位数量 。后来怎么想怎么感觉不对 。。T T
whileFalse
2020-09-28 15:33:18 +08:00
@overhell 你不如丢段输入参数 /计算结果给大家看。嘴炮半天大家也没明白。
jadehare
2020-09-28 16:53:55 +08:00
@overhell #17 上火都是好的,我理发都是你肾不好。微笑
CatTom
2020-09-28 17:51:13 +08:00
推荐米诺和菲娜(狗头)
Xbluer
2020-09-28 18:19:04 +08:00
才去医院看的毛囊炎,医生给开了 「立思丁]。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/711195

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX