请求道数学题:1—11这11个数字里,每2个数分一组,可以分多少组? 不要重复

请求道数学题:1—11这11个数字里,每2个数分一组,可以分多少组? 不要重复,第1张

要详细一点?好~
1+2,1+3,1+4,1+5,1+6,。。。1+11 共10组
2+3,2+4,2+5,2+6,。。。2+11 共9组
3+4,3+5,3+6,3+7,。。。3+11 共8组
4+5,。。。4+11 共7组
5+6,。。。5+11 共6组
6+7,6+8,。。。6+11 共5组
7+8,7+9,。。。7+11 共4组
8+9,8+10,8+11 共3组
9+10,9+11 共2组
10+11 共1组
以上求和 : 共 10+9+8+7+6+5+4+3+2+1 = 55组

当然你可以用函数累加产生组合(11的5次方,16万行,分18列),然后计算和,筛选这样。。。,不过我习惯用宏穷尽计算,
可重复组合7645,不重复组合3000,代码如下:
Sub txx()
Columns("A:J")ClearContents
ft = 0
gt = 0
xx = 26
b = 1
yy = 11
ct = 5
For t1 = b To yy
For t2 = b To yy
For t3 = b To yy
For t4 = b To yy
For t5 = b To yy
'For t6 = b To yy
'For t7 = b To yy
'For t8 = b To yy
'判断和
If t1 + t2 + t3 + t4 + t5 <> xx Then GoTo bk
'+ t6 + t7 + t8
gt = gt + 1 '含重复累加
'累计重复项数
cm = 0
tt = Array(t1, t2, t3, t4, t5) 't6,t7,t8)
For i = 0 To ct - 1
For x = 0 To ct - 1
If tt(i) = tt(x) Then cm = cm + 1
Next x
Next i
'重复项数5个(与自身重复计算1)为没有重复项
If ft = 65536 Then GoTo bk
If cm = ct Then ft = ft + 1: Cells(ft, 1)Resize(1, ct) = tt
bk:
'Next t8
'Next t7
'Next t6
Next t5
Next t4
Next t3
Next t2
Next t1
'输出
fend:
Cells(1, 9) = gt
Cells(1, 10) = ft
End Sub
结果部分贴出:
1 2 3 9 11
1 2 3 11 9
1 2 4 8 11
1 2 4 9 10
1 2 4 10 9
1 2 4 11 8
1 2 5 7 11
1 2 5 8 10
1 2 5 10 8
1 2 5 11 7
1 2 6 7 10
1 2 6 8 9
1 2 6 9 8
1 2 6 10 7
1 2 7 5 11
1 2 7 6 10
1 2 7 10 6
1 2 7 11 5
1 2 8 4 11
1 2 8 5 10
1 2 8 6 9
1 2 8 9 6
1 2 8 10 5
1 2 8 11 4
1 2 9 3 11
1 2 9 4 10
1 2 9 6 8
1 2 9 8 6
1 2 9 10 4
1 2 9 11 3
1 2 10 4 9
1 2 10 5 8
1 2 10 6 7
1 2 10 7 6
1 2 10 8 5
1 2 10 9 4
1 2 11 3 9
1 2 11 4 8
1 2 11 5 7
1 2 11 7 5
1 2 11 8 4
1 2 11 9 3
1 3 2 9 11
1 3 2 11 9
1 3 4 7 11
1 3 4 8 10
1 3 4 10 8
1 3 4 11 7
1 3 5 6 11
1 3 5 7 10
1 3 5 8 9
1 3 5 9 8
1 3 5 10 7
1 3 5 11 6
1 3 6 5 11
1 3 6 7 9
1 3 6 9 7
1 3 6 11 5

一定范围内的取最大数用MAX函数,如果指定取第N个大的数的话,可以用LARGE函数。

一定范围内的取最小数用MIN函数,如果指定取第N个小的数据的话,可以用SMALL函数。

将所欲要的数取出来之后,用SUM函数相加即可。

示例:

方法1 所有数字保留到百位,按大方向计算哪些能加到11400 然后细致计算 找出哪些合适,但是繁琐不好用
方法2 用计算器拿11422 从上到下去减 什么时候减到0 那么这几个数字可以 比方法1简单一些
方法3 用计算机VB 编写程序,让电脑去解这个蛋疼的题目,如果死机,则有无数组,无解。 如果有解,得到答案。怎么编写你得请教编程大神们 我不记得怎么遍了

最大的两个数为10+11=21,剩下3个数之和为10,有
127,136,145;235:4组;
最大的两个数为9+11=20,剩下3个数之和为11,有
128,137,146,236,245:5组;
最大的两个数为8+11=9+10=19,剩下3个数之和为12,有
138,147,156,237,246,345
除去不合要求的,有5+6=11组;
最大的两个数为7+11=8+10=18,剩下3个数之和为13,有
157,247,256,346,
除去不合要求的,有2+4=6组;
最大的两个数为6+11=7+10=8+9=17,剩下3个数之和为14,有
167,257,347,356,
除去不合要求的,有0+1+4=5组;
最大的两个数为7+9=16,剩下3个数之和为15,有456,1组。
当最大的两个数为7+a<=15,a是1到11的数时在1到6中的3个数之和<=15,不满足题设。
所以共4+5+11+6+5+1=32组满足题设。

B18输入公式=LEFT(RIGHT(" "&SUMPRODUCT($B$5:$L$1710^(11-COLUMN($A:$K))),12-COLUMN(A1)))
向右复制公式。
O18的公式是=LEFT(RIGHT(" "&SUMPRODUCT($O$5:$Y$1710^(11-COLUMN($A:$K))),12-COLUMN(A1)))
就是改一下求和的范围,即$B$5:$L$17改成$O$5:$Y$17。再向右复制公式。
下面的两个公式也是这样改求和范围即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13033709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-29
下一篇 2023-05-29

发表评论

登录后才能评论

评论列表(0条)

保存