从9个球里任取3个,一共多少种组合?

robig 2017-12-07 11:54:38
哈哈,不是简单的C39.

题目如下: 有3堆球(比如ABC),每堆球里有3个相同的。 现在要从这9个球里任取3个,问一共几种组合?

强写出来答案是10
AAA
AAB
AAC
ABB
ACC
ABC
BBC
BCC
BBB
CCC

即如果你取出的是 A1A2B1 和 A1A3B2 和A2A3B3 之类的因为都是 AAB,所以算一种

想求个算法公式。以后引申为4X4 里取4 等等的也可以用。谢谢
...全文
3080 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
robig 2017-12-27
  • 打赏
  • 举报
回复
引用 4 楼 hbu_pig 的回复:
我思考一下,谢谢
robig 2017-12-27
  • 打赏
  • 举报
回复
引用 3 楼 ayalicer 的回复:
1+2+3+4
结果对,能否详说一下。谢谢
robig 2017-12-27
  • 打赏
  • 举报
回复
引用 1 楼 mj845573397 的回复:
ACB,BAC,BCB........这些跟你写的也有重复吗
ACB=BAC=ABC BCB=BBC
欢乐的小猪 2017-12-25
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
1+2+3+4
oyljerry 2017-12-21
  • 打赏
  • 举报
回复
三层循环,结果放到set

In [11]: q = ['A', 'B', 'C']

In [12]: def f():
    ...:     s = set()
    ...:     for x in range(3):
    ...:         for y in range(3):
    ...:             for z in range(3):
    ...:                 s.add(q[x]+q[y]+q[z])
    ...:     return s
    ...:

In [13]: print(f())
set(['ACC', 'ACB', 'ACA', 'AAA', 'AAC', 'AAB', 'BCA', 'BCB', 'BCC', 'BAB', 'BAC', 'BAA', 'CAC', 'CAB', 'CAA', 'CCA', 'CCC', 'CCB', 'ABA', 'ABB', 'ABC', 'BBC', 'BBB', 'BBA', 'CBB', 'CBC', 'CBA'])
mj845573397 2017-12-12
  • 打赏
  • 举报
回复
ACB,BAC,BCB........这些跟你写的也有重复吗

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧