枚举
组合数学:离散对象 -> 安排
枚举法
条件:
- 离散
- 有范围
分类讨论
例1:
方程:
\[x^2 + y^2 + z^2 = 2019, \quad x, y, z \text{ 属于素数}.
\]
假设
\[x \leq y \leq z
\]
- 设 \(x = 2\),...
- 设 \(x = 3\),...
...
最后答案要乘 3 的阶乘。
例2:
七位数 1, 2, 3, 4, 5, 6, 7
条件:
偶数位的数字等于相邻两数之差。
- \(1 = 3 - 2 = 4 - 3 = 5 - 4 = 6 - 5 = 7 - 6\)
- \(2 = 3 - 1 = 5 - 3 = 6 - 4 = 7 - 5\)
- \(3 = 4 - 1 = 5 - 2 = 7 - 4\)
- \(4 = 5 - 1 = 6 - 2 = 7 - 3\)
- \(5 = 6 - 1 = 7 - 2\)
- \(6 = 7 - 1\)
相邻两个偶数位:
- \(a, x, b, y, c\)
若 \(a > b > c\):
- \(x = a - b, y = b - c\)
- \(x + y = a - c\)
若 \(a > b, b < c\):
- \(x = a - b, y = c - b\)
- \(x + y = a + c - 2b\)
若 \(a < b, b > c\):
- \(x = b - a, y = b - c\)
- \(x + y = 2b - a - c\)
若 \(a < b < c\):
- \(x = b - a, y = c - b\)
- \(x + y = c - a\)
......
好吧,写不下去了,以上是错误案例
1 2 3 4 5 6 7
- \(a, b, c, d, e, f, g\)
总和:
\[1 + 2 + 3 + ... + 7 = 28
\]
Trick :分析奇偶
- \(f = |e - g| \Rightarrow 2 |e + f + g |\)
- \(d = |c - e| \Rightarrow 2 |d|, \, d = 2, 4, 6\)
- \(b = |a - c| \Rightarrow 2 |a + b + c|\)
减少枚举:
枚举规则必须一致:
<1> d = 2:
- {1,5,6},
- {3,4,7},
- 7432516,7432156,7342651,7342615
<2> d = 4
- {2, 3 ,5},
- {1, 6, 7},
- ... ...
例3
\[h = 4a + 10b + 19c
\]
\[a + b + c = 94
\]
h有多少种
- \(a = 94 - b - c\),
- \(h = 4(94 - b - c) + 10b + 19c\)
- \(h = 376 + 6b + 15c\)
trick : 5 * 10 = 3 * 4 + 2 * 19
- 所以\(b\) \(<=\) \(4\)
but, why
- 这里可能一下子转不过来
- \(b\)只有5种取值,
- 如果\(b = 5\),那就等价于\(a = 3, c = 2\) -> \(b = 0\) ,会造成重复

浙公网安备 33010602011771号