五个人的团体活动
5个人的团队活动,4个人有出钱,最后团队算账,四个出钱人每人列出其他人应该付自己的钱(假设都有出团队项目的钱),算账方法:
1、每个人发要付给对方的红包,互发红包,计算时间复杂度为o(1),发红包数量为4×3+1×4=16个红包,可认为空间复杂度为o(16),考虑到公正性100%,每两个人之间需要计算确认,重复计算,所以计算时间复杂度需要翻倍,最终计算时间复杂度为o(2)。
2、每两个之间先算好得失矢量,然后单向发红包,计算时间复杂度为o(10),发红包数量最多为10,最少为1,可认为空间复杂度为o(1)->o(10),同样考虑公正性100%,计算时间复杂度翻倍,最终计算时间复杂度为o(20)
3、每个人算出自己的最终得失,然后发红包,计算时间复杂度为o(4)×4+o(4)×1=o(20),发红包数量最多为4,最少为1,可认为空间复杂度为o(1)->o(4)。考虑到公正性100%,由于是所有得失综合算,这里的计算时间复杂度需要乘以人数的倍数,所以最终计算时间复杂度为o(100)。
但其实这里的计算时间复杂度,空间复杂度,在发红包时,最终都是体现在耗费时间上。综上,方法3最不可取,方法1和方法2皆可。
转载请注明:好现场 » 团体活动最后的算账问题