组合数学:Burnside引理和Polya定理解决染色置换问题

例题

给3x3的格子上色,4种颜色,可以重复。排除旋转后相同的情况,请问有多少种不同的上色方法?

解答

设格子编号如下:

| 1 | 2 | 3 |

| 4 | 5 | 6 |

| 7 | 8 | 9 |

每种旋转是为一种置换,定义为gi,共4种置换:

g1=<0°>g2=<90°>g3=<180°>g4=<270°>

D(gi)表示在gi这种置换的作用下没有改变状态的方案集合,|D(gi)|表示其元素个数。以下分情况讨论:

  • 旋转0°
    旋转0°怎么都不会变, 计算随便涂的总数即可:

|D(g1)|=49

  • 旋转90°

    {1、3、7、9}循环变换,{2、4、6、8}循环变换, {5}永远不变,置换群为(1379)(2468)(5),(1379)可取4种颜色,(2468)可以取4种颜色, (5)可以取4种颜色,总方案数:

|D(g2)|=43

  • 旋转180°

    置换群为(19)(28)(37)(46)(5),总方案数:

|D(g3)|=45

  • 旋转270°

    类似旋转90°,总方案数:

|D(g4)|=43

根据Burnside引理,设G为所有置换的集合,总方案数:

L=1|G|i=1|G||D(gi)|=14(49+43+45+43)=65824

或直接用Polya定理,设m种颜色给n个对象染色,Ci为每种置换下的循环节,则有:

L=1|G|[mC1+mC2++mCg1+mCg]=14(49+43+45+43)=65824

posted @   orion-orion  阅读(507)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· spring官宣接入deepseek,真的太香了~
点击右上角即可分享
微信分享提示