求!C种颜色的球在有S个球的环中有几种排法(C/C++)

youkoala 2008-05-10 10:13:50
题目:
一只手链有S个珠子,每个珠子可以有C中不同的颜色,手链是闭合的环状(没有头尾、没有方向),
假设各种颜色的珠子无限提供,问对不同的C和S,可以有不同的手链的数量。
输入每行定义一组测试,有两个整数,C和S,C=S=0表示结束,不可为负,并且c*s<=32。
输出为手链的数量
示例:
INPUT OUTPUT
C S 数量
1 1 1
2 1 2
2 2 3
5 1 5
2 5 8
2 6 13
6 2 21
0 0
...全文
163 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
所谓圆排列,就是典型的几人围着圆桌坐,谁和谁相邻、谁不能和谁相邻这类问题。
第二类圆排列就是圆排列的正反两面是等效的,也就是既允许顺时针排也允许逆时针排,典型的就是几种颜色的珠子串项链的问题。
解决这些问题的数学基础是群的置换,基本上依据polya定理都可以解决。
第二类圆排列公式也是依据polya定理推导出的简化公式,
对m种颜色的n颗珠子组成的不同项链样式有:1/8∑m^(n/i)+1/4(m^2+m^3) (i=1..n) ^表示指数,不能整除的运算一律取整。
不过这个公式只适用于m<n的情况,我印象是如此。
youkoala 2008-05-17
  • 打赏
  • 举报
回复
能在详细点吗?第二类圆排列公式我没看过..
  • 打赏
  • 举报
回复
第二类圆排列公式。

33,028

社区成员

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

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