均匀分成 k
个子集,直接使用dfs即可。
prices
的总和 s
。如果 s
不能被 k
整除,则无法均匀分配,直接返回 False
。小塔为回馈粉丝,进行礼品派发活动,不同礼品价格不同,为公平起见,需要将全部的礼品公平的分配到粉丝手中,且每位粉丝拿到的礼品总价格相同。请帮忙确认以下的礼品数量和价格是否可以满足公平的分配原则,可以返回true,否则返回flase。
例如:
价格分别为5,4,1,3,2,3,2的礼物是否可以公平分配到4名粉丝手中?答案是可以的,按(5)、(2,3)、(2,3)、(1,4)组合,第一位粉丝分配到价格为5的礼物,第二位分配到价格为2和3的礼物,第三位分配到价格为2和3的礼物,第四位分配到价格为1和4的礼物,全部程序需要输入的参数是价格数组和粉丝人数(数组元素和粉丝人数均小于1000)
输入
[5,4,1,3,2,3,2],4
输出
true
输入
[1,2,2,2,2],3
输出
flase