环形染色问题(数论)

目录

中心区不染色

m=4,n=4

解:

m=5,n=4

对于

中心区染色


如图所示,一个圆环被分成m各部分,现在有n种颜色,要求给圆环上色,相邻的两部分颜色不相同

环形染色问题(数论)_第1张图片

 这类题目通常分为中心区不染色与中心区染色

中心区不染色

m=4,n=4

给如下图所示的圆环染色

环形染色问题(数论)_第2张图片

解:

我们从A开始枚举

A:4种颜色可选

B:4-1=3种颜色可选

C:4-1=3种颜色可选

而D……

D与A和C相连,也就是说,D可选颜色=4-(A、C总占用颜色)

那么,我们把C、D组合起来

若 C颜色=A颜色:

    D:4-1=3种颜色可选,C:1种(也就是A选的)

否则:

    D:4-2=2种颜色可选,C:2种(也就是A没有选的)

横式:

4\times3\times(1\times3+2\times2)= 4\times3\times7= 84

m=5,n=4

环形染色问题(数论)_第3张图片

很显然,这个圆环比前面一个难

这里

我们用考虑同色的方法更好

A:D、C

并且

D、C不能同时同色

于是,

便有了三种情况

  1. AC同色 式子:4\times3\times1\times3\times2 =72
  2. AD同色 式子:4\times3\times2\times1\times3 =72
  3. AB、AC不同色 式子:4\times3\times2\times2\times2 =96

总和便是72+72+96 =240染色方法

对于m\geqslant2, n\geqslant2

设序列A

A_i表示有i个部分,总共有多少种染色方式

环形染色问题(数论)_第4张图片

如果我们将这个复杂的环转化为线性的表,会更加简单

环形染色问题(数论)_第5张图片

那么求出A_i便是小学三/四年级的数学了

A_i=n(n-1)^{i-1}

接下来,再把它接成一个环即可

而变成环后

A_i+A_{i-1}才等于n(n-1)^{i-1}

对这个式子变个型

变成A_i+A_{i-1}=(n-1)^i+(n-1)^{i-1}

接下来做一个判断

A_i==(n-1)^i???

若是A_i=(n-1)^i 那么无法解释A_2=n(n-1)

那么

A_i必然\neq (n-1)^i

那么设B来算出A_i-(n-1)^i的差

即 B_i=A_i-(n-1)^i

\frac{B_i}{B_{i-1}}必为-1(答案换一种说法便是A_m-A_{m-1}+A_{m-2}-A_{m-3}...)

那么

便可知晓B_i=(-1)^i\cdot(n-1)

A_i就是(n-1)^i+(-1)^i\cdot(n-1)

验证

(4-1)^4+(-1)^4\cdot(4-1)=84

(4-1)^5+(-1)^5\cdot(4-1)=240

中心区染色

我们可以发现,中心区是和所有部分连着的

于是答案呼之欲出

对于给定的m(不包含中心区)、n

答案为

n\times[(n-2)^m+(-1)^m\cdot(n-2)]

你可能感兴趣的:(c++)