一个典型的排列组合NP难题,谁能试着实现下,非常感谢。
M≥4,M是正整数,现在有1-M这M个数,从中选出互不相同4个数,这样共有Cm4种选法,要求从这所有选法中再次筛选出
(1)至多有一个数相同,这样组合的个数;
(2)至多有两个数相同,这样组合的个数。
具体做法是先取组合 1234,其他Cm4 -1个组合与其对比,各选出符合条件(1)和(2)的组合,再在选出的组合中选出一个作为标准,其余的再进行对比......................直至选不出为止。
这就是我的思路,但是不会编程,求大家帮帮忙,C++或Matlab或Python或maple或Mathematica代码均可,我将参考学习,非常感谢。