问题描述:
目标:从(1-33)里任选6个不重复的数字相加之和等于60-150之间任意一个数字.要求计算出所有组合
这个计算量很大,是否可以这样实现以减轻运算量?
一.1-33里面可以提前(人为)判断出本次不会出现的某个数字、或者某几个数字,在计算之前通过软件设置提前将其去除掉,也就是说在本次计算和值的过程中将不包含被剔除掉的数字.计算结果里,也不包含这些被剔除掉的数字.比如:判断出本次不会出现1、5、9、15、18、21,24、30那么在计算完成的所有组合里,将不包含上面这8个数字(6个数字里面将不包含1、5、9、15、18、21、24、30),判断不包含的数字越多,计算量越小.例如:和值等于60的所有组合里将不包含
1+2+7+10+12+18=60
1+2+6+10+12+29=60
1+2+8+9+12+28=60等等组合,因为这些组合里含有(1、5、9、15、18、21、24、30这几个被剔除的数字、已经提前被软件设置去除掉了,不会参加运算)不知道这种方法是否可以实现?
二.1-33里面可以提前(人为)判断本次会出现的某几个数字.比如判断出本次会有5、7、8、12、14、15、21、29、30这9个数字(判断出的数字个数肯定大于等于6个数字),那么在计算和值的时候,只进行这几个数字中任意6个不重复数字的和值等于特定数值的运算、并给出所有可能的组合.
以上两种方法不知道哪种可行,请各位高手指教并给出程序,
这个计算量很大,是否可以这样实现以减轻运算量?
一.1-33里面可以提前(人为)判断出本次不会出现的某个数字、或者某几个数字,在计算之前通过软件设置提前将其去除掉,也就是说在本次计算和值的过程中将不包含被剔除掉的数字.计算结果里,也不包含这些被剔除掉的数字.比如:判断出本次不会出现1、5、9、15、18、21,24、30那么在计算完成的所有组合里,将不包含上面这8个数字(6个数字里面将不包含1、5、9、15、18、21、24、30),判断不包含的数字越多,计算量越小.例如:和值等于60的所有组合里将不包含
1+2+7+10+12+18=60
1+2+6+10+12+29=60
1+2+8+9+12+28=60等等组合,因为这些组合里含有(1、5、9、15、18、21、24、30这几个被剔除的数字、已经提前被软件设置去除掉了,不会参加运算)不知道这种方法是否可以实现?
二.1-33里面可以提前(人为)判断本次会出现的某几个数字.比如判断出本次会有5、7、8、12、14、15、21、29、30这9个数字(判断出的数字个数肯定大于等于6个数字),那么在计算和值的时候,只进行这几个数字中任意6个不重复数字的和值等于特定数值的运算、并给出所有可能的组合.
以上两种方法不知道哪种可行,请各位高手指教并给出程序,
问题解答:
我来补答展开全文阅读