专题地图 › 排列组合
2017 年全国高中数学联赛一试(B 卷) · 第 8 题
F2填空题排列组合
若正整数 a,b,c 满足 2017≥10a≥100b≥1000c,则数组 (a,b,c) 的个数为。
作答
分数写 a/b,根号写 √ 或 sqrt,π 写 pi 也可以。
标准答案:574
解析
思路
按最受约束的整数 c 分层,固定 c,b 后可直接数出 a 的闭区间整数个数。
解答
由 1000c≤2017 及正整性,c∈{1,2};又 a≤201,b≤20。
当 c=1 时,10≤b≤20。对每个这样的 b,a 可取 10b,10b+1,…,201,有 202−10b 个。因此本类共有
b=10∑20(202−10b)=11×202−10×2(10+20)×11=572
个数组。
当 c=2 时,b=20,a=200 或 201,有 2 个数组。
故所求个数为 572+2=574。
复核
两类数组分别对应不同的第三坐标,没有重复。最大可能值 a=201,b=20,c=2 满足全部不等式,端点均允许取等。
方法总结
嵌套大小约束的正整数计数,可从可选范围最小的变量开始,逐层确定整数区间并求和。
为什么评为 F2(会透露解法方向)
从仅有两种取值的c开始分层,固定b后数闭区间整数并求和。
用到的方法(会透露解法方向)
核心工具:把对象唯一编码后分类计数
专题卡:选唯一参数表示,再按范围分层计数