Padingsten
2022-05-25T05:54:07+00:00
[s:ac:茶]最近研究大乐透呢。
1到35这些数,
任意5个数组合,
加起来和值85的有多少注?
怎么计算啊,兄弟们,
中了发红包。
[quote][tid=32042810]Topic[/tid] Post by [uid=36045743]机智的詹姆斯[/uid] (2022-05-25 13:56):
[s:ac:茶]最近研究大乐透呢。
1到35这些数,
任意5个数组合,
加起来和值85的有多少注?
怎么计算啊,兄弟们,
中了发红包。[/quote]你先告诉我为什么和要等于85
[s:ac:哭笑]自己的算法题自己做。
[s:ac:哭笑]答案我告诉你是:5772种组合。
懒得优化,时间复杂度我不管了[s:ac:哭笑]
Excel宏代码 ...
Sub 计算()
Dim trisum, currsum
Dim i, j, k, x, y
Dim m
Dim count
count = 0
m = 1
Range("B:B").ClearContents
trisum = Application.InputBox("输入五个数的和", Default:=85, Type:=1)
For i = 1 To 35 - 4
For j = i + 1 To 35 - 3
For k = j + 1 To 35 - 2
For x = k + 1 To 35 - 1
For y = x + 1 To 35
currsum = Range("A" & i).Value + Range("A" & j).Value + Range("A" & k).Value + Range("A" & x).Value + Range("A" & y).Value
If currsum > trisum Then
Exit For
End If
If currsum = trisum Then
Range("b" & m).Value = Range("A" & i) & "+" & Range("A" & j) & "+" & Range("A" & k) & "+" & Range("A" & x) & "+" & Range("A" & y)
m = m + 1
count = count + 1
End If
Next y
Next x
Next k
Next j
Next i
MsgBox "共有 " & count & "个满足条件的组合"
End Sub
第一列输入1-35,选中第二列B1执行宏就完了,B列会显示出来所有结果,几秒就算完了也用不着优化。
你要有别的想算的自己改数字就完了
[img]https://img.nga.178.com/attachments/mon_202205/25/-7Q17s-guwrK2iToS8u-hd.jpg[/img]
懒得动脑子,穷举了一下
counts=0;
for x1=1:35
for x2=(x1+1):35
for x3=(x2+1):35
for x4=(x3+1):35
for x5=(x4+1):35
counts=counts+(x1+x2+x3+x4+x5==85);
end
end
end
end
end
结果是5772
暴力穷举一下不难
啊把电脑卡死了[s:ac:喷]
[img]https://img.nga.178.com/attachments/mon_202205/25/-7Q17s-hs4qK1tT3cSsg-lc.jpg[/img]
880131个 楼上和我谁错了是js不能这么去重吗
六楼七楼像极了leetcode评论区[s:ac:哭笑]
[quote][pid=613188496,32042810,1]Reply[/pid] Post by [uid=62855938]HashTag002FA7[/uid] (2022-05-25 15:26):
暴力穷举一下不难
啊把电脑卡死了[s:ac:喷]
[img]https://img.nga.178.com/attachments/mon_202205/25/-7Q17s-hs4qK1tT3cSsg-lc.jpg[/img]
880131个[/quote]你这个肯定不对,因为大乐透每个数不会重复的。
不可重复的话5772,可以重复的话9169
[img]https://img.nga.178.com/attachments/mon_202205/25/-7Q17s-er75K25T3cSsg-i6.jpg[/img]
[quote][pid=613180355,32042810,1]Reply[/pid] Post by [uid=37746409]永远de稻草[/uid] (2022-05-25 14:53):
你先告诉我为什么和要等于85[/quote]因为主任告诉我了 今天和值就是85
[quote][pid=613243301,32042810,1]Reply[/pid] Post by [uid=36045743]机智的詹姆斯[/uid] (2022-05-25 19:01):
因为主任告诉我了 今天和值就是85[/quote]艹真的假的,祝你好运,中了v我50[s:ac:茶]
[quote][pid=613243301,32042810,1]Reply[/pid] Post by [uid=36045743]机智的詹姆斯[/uid] (2022-05-25 19:01):
因为主任告诉我了 今天和值就是85[/quote]你这个主任是干什么的主任[s:ac:哭笑][s:ac:哭笑]