冷启动:先把「三个零点」翻译成数得出来的东西
题面给的是一个分段函数
f(x)=⎩⎨⎧x,31x3−21(a+1)x2+ax,x<0,x≥0,
要数的是 y=f(x)−ax−b 的零点个数。看见分段函数,第一反应就是「零点也得分段数」:
记 g(x)=f(x)−ax−b,它在两支上是两个完全不同的函数——
- x<0:g(x)=x−ax−b=(1−a)x−b,一次的(a=1 时退化成常数);
- x≥0:g(x)=31x3−21(a+1)x2+ax−ax−b=31x3−21(a+1)x2−b,那个 ax 抵消掉了。
这个抵消是本题的全部技术含量。 右支减掉 ax 之后,a 只剩在 x2 的系数里,
b 只是一个上下平移量——两个参数从此分工:a 管曲线的形状,b 管高低。
【点睛】说的「一元化」就是这件事,而它是算出来的,不是硬凑的。
第二件事:先把每支的零点个数上限数出来。 左支是一次的,至多 1 个。右支记
F(x)=31x3−2a+1x2−b(x≥0),
F′(x)=x2−(a+1)x=x(x−(a+1)),
在 x≥0 上最多只有一个正驻点,图形只可能是「先降后升」或「一路上升」,至多 2 个零点。于是
3=x<0 那支1+x≥0 那支2
是唯一的拆法——两支都必须顶到自己的上限。一句话就把「恰有三个零点」换成了两条互不干扰的要求,
剩下的只是分别把它们解出来。这也是这类题的通用打法:先算上限,可能的拆法常常当场压到唯一。
第三件事:分界点 x=0 归右支。 左支的定义域是 x<0,开的;所以左支那个零点必须
严格小于 0,而 x=0 是不是零点只由右支说话:F(0)=−b,故 x=0 是零点 ⟺b=0。
这一条后面要用两次,是本题最容易悄悄多数一个零点的地方。
原卷的几处毛病(校订层 q09-fix.md 里逐条记着,都不影响答案):
- 【详解】有两处印着「当 BC=λAP 时」——本题连一个向量都没有,
这是排版时从别的题串进来的,按上下文两处都该是「当 x≥0 时」(求导与后面的 F(x) 都只在右支上做)。
- 【详解】最后一句停在「若另一零点在<0」就断了:左支那一半根本没证完。它只证到「右支上至少两个」,
而「左支恰好还有一个」需要的条件(下面的 a<1)从头到尾没出现。
- 本页没印【答案】块,答案 D 取自【详解】自己那句「答案选 D」。
- 更值得说的一处:a>−1 那三张草图里,标着
a>1 的那张画出了三个交点——而
a>1 时三个零点是凑不出来的(下面解法二的下幅图专门画这件事)。这不影响选 D,
因为 D 只是「三个零点」的必要条件;但拿那张图当结论用就错了。
解法一:分段各自数零点,三个只能是「1+2」
① 拆。 如冷启动所述,x<0 上 g(x)=(1−a)x−b,x≥0 上 g(x)=F(x)=31x3−2a+1x2−b。
零点总数 = 左支零点数 + 右支零点数(两支定义域无交,不会重复计数)。
② 左支能给几个。 解 (1−a)x=b:
- a=1:唯一解 x=1−ab,它落进 x<0 当且仅当 1−ab<0;
- a=1:方程成了 0=b。b=0 时一个零点都没有;b=0 时整条射线 x<0 全是零点,
零点有无穷多个,与「恰有三个」矛盾,这个退化情形直接排除。
所以左支至多 1 个,而且是不是 1 个,取决于 b 的符号与 1−a 的符号是否相反。
③ 右支能给几个。 把导数因式分解:F′(x)=x(x−(a+1))。按 a+1 的符号分类讨论:
-
a+1≤0(即 a≤−1):x≥0 时 x−(a+1)≥0,故 F′(x)≥0,F 在 [0,+∞) 上不减。
又 F(0)=−b、F(x)→+∞,于是 b≥0 时恰 1 个零点,b<0 时 0 个——至多 1 个。
-
a+1>0(即 a>−1):F 在 [0,a+1] 上递减、在 [a+1,+∞) 上递增(这就是导数的正负与函数的单调性),
端点值 F(0)=−b,极小值
F(a+1)=3(a+1)3−2(a+1)3−b=−6(a+1)3−b.
按 b 分五段(每段里「有没有零点」都由函数零点存在定理在单调段上给出,单调保证不多不少):
| b 的位置 | F(0)=−b | F(a+1) | 右支零点数 |
|---|
| b>0 | <0 | <0 | 1(只在递增段穿一次) |
| b=0 | =0 | <0 | 2(x=0 与 x=23(a+1)) |
| −6(a+1)3<b<0 | >0 | <0 | 2(递减段、递增段各一个) |
| b=−6(a+1)3 | >0 | =0 | 1(谷底相切,重根只算一个零点) |
| b<−6(a+1)3 | >0 | >0 | 0(全程在 x 轴上方) |
所以右支至多 2 个,而且要拿满 2 个只有两种可能:−6(a+1)3<b<0 或 b=0。
④ a≤−1 整类当场毙掉。 由 ②③,此时左支至多 1、右支至多 1,总数至多 2,
连三个的门都摸不到(细算还能看出恒等于 1:b<0 时左支 1、右支 0;b≥0 时左支 0、右支 1——
这正是原卷 (1) 那句「实际上有一个」)。于是必有 a>−1,选项 A、B 出局。
⑤ 右支必须拿满 2 个,逼出 b<0。 由 ③ 的表,只剩 −6(a+1)3<b<0 与 b=0 两种。
但 b=0 时左支给不出零点(那时左支的解是 x=0,而 x=0 不在 x<0 里,a=1 的退化情形已在 ② 排除),
总数只有 2。所以
−6(a+1)3<b<0,
特别地 b<0,选项 C 出局,只剩 D。
⑥ 左支必须拿满 1 个,逼出 a<1。 已知 b<0,②的条件 1−ab<0 就要求 1−a>0,即 a<1。
⑦ 合起来,这是充要条件。 三个零点
⟺−1<a<1且−6(a+1)3<b<0.
它蕴含 a>−1 且 b<0,故答案是 D。
顺带看清 D 的身份:它是必要条件,不是充要条件。 例如 a=2>−1、b=−2<0 完全满足 D,
可那时零点只有两个(a>1 使左支一个都不给)。本题问的是「恰有三个零点,则」,
必要条件就够选了;但若题目改成「求所有满足条件的 (a,b)」,答案就是 ⑦ 那两条,
少写 a<1 或把区间端点写闭都是错的。
解法二:把 b 分离成一条水平线,a 管形状、b 管高低
① 参变分离。 零点方程按支把 b 单独拿出来:
- x<0:b=(1−a)x=:ψ(x);
- x≥0:b=31x3−2a+1x2=:φ(x)。
② 于是零点个数 = 水平线 y=b 与这两条曲线的交点个数之和。 这一步把两个参数彻底分开:
a 只改两条曲线的形状,b 只改水平线的高度。要数的东西全变成了「一条横线截几次」。
③ 两条曲线长什么样。
- ψ 是过原点、斜率 1−a 的射线,只画 x<0 那半,且原点挖掉:
a<1 时它落在第三象限,值域是 (−∞,0);a>1 时落在第二象限,值域是 (0,+∞)。
两种情形的值域都不含 0(原点被挖掉了),这一条后面要用。
a=1 时 ψ≡0:横线 y=0 与它处处相交(零点无穷多个,不是三个),
b=0 时一个交点都没有(左支颗粒无收,右支至多两个,也凑不出三个)——
所以 a=1 当场排除,下面只看 a=1。
- φ(0)=0,φ′(x)=x(x−(a+1)):
a>−1 时先降到谷底 (a+1,−6(a+1)3) 再升向 +∞;
a≤−1 时在 [0,+∞) 上单调上升,而且整条不低于 x 轴——因为
φ(x)=x2(3x−2a+1)≥0。

④ 读上幅图:能凑出三个的唯一一类。 三个交点只能是「左支一个 + 右支两个」(射线至多截一次,
先降后升的曲线至多截两次),所以要同时满足两件事:
- 与 φ 交两次。 a>−1 时 φ 先降到谷底 −6(a+1)3 再升向 +∞,
于是横线截两次 ⟺ 它高于谷底、又不高于起点高度 φ(0)=0:
−6(a+1)3<b≤0.
右端是闭的:b=0 时那两个交点是 x=0 与 x=23(a+1)(把 φ 写成
x2(3x−2a+1) 就看出来了)。而 b>0 时横线只在上升段截一次。
这一条顺带逼出 a>−1:a≤−1 时 φ 单调且不低于 x 轴,横线最多截它一次。
- 与 ψ 交一次,这一步把 b=0 剔掉。 ③ 里说过,ψ 的值域((−∞,0) 或 (0,+∞))
不含 0,所以 b=0 时左支一个交点都不给,总数只有 2——于是上一条的右端点必须去掉:
−6(a+1)3<b<0,特别地 b<0.
再让 b<0 落进 ψ 的值域:那就要求值域是 (−∞,0),即斜率 1−a>0,也就是 a<1。
图上取 a=21:谷底是 (23,−169),把横线放在 b=−41
(夹在 −169 与 0 之间)就数到三个交点;抬到 b=41>0 只剩一个;
压到谷底 b=−169 则右支变成相切、只算一个,总数掉回两个。
b 的区间两端各开在一件不同的事上:左端开在「相切只算一个交点」(图上灰线那条演示了一遍),
右端开在「b=0 时左支的原点被挖掉、一个交点都不给」。
⑤ 读下幅图:a>1 怎么摆都是两个。 a>1 时 1−a<0,ψ 整条抬到 x 轴上方
(值域 (0,+∞));而 φ 在 [0,23(a+1)] 上不高于 x 轴、谷底在下方,
过 x=23(a+1) 之后才升到 x 轴上方。于是
- b<0:ψ 一个交点都不给,最多只能从 φ 拿 2 个 ⇒ 总数 ≤2;
- b>0:ψ 给 1 个,但 φ 在 b>0 处只被截 1 次 ⇒ 总数 2;
- b=0:ψ 那头的原点被挖掉,给 0 个;φ 给 2 个 ⇒ 总数 2。
图上取 a=2:b=2 与 b=−2 两条横线都只数到两个交点。这正是原卷第三张草图画错的地方。
⑥ 结论。 三个零点 ⟺−1<a<1 且 −6(a+1)3<b<0;它蕴含 a>−1、b<0,选 D。
两条路的分工值得记一下:解法一是「算」——每支的零点数写成 b 的分段表,结论最硬;
解法二是「看」——把参数分离成横线与曲线,一张图读完全部情形,最快,也最容易发现原卷那张草图不对。
避坑
| 坑 | 长什么样 | 怎么躲 |
|---|
| 没发现 ax 抵消 | 右支还带着 +ax−ax 硬求导,F′ 多出一项,谷底与极小值全算错 | 动笔前先把 g(x)=f(x)−ax−b 在两支上各化简一次 |
| 分界点归错支 | 左支解出 x=1−ab 后写成 ≤0,把 b=0 也算进左支 | 左支定义域是开的:零点必须严格 <0;x=0 只由 F(0)=−b 管 |
| 相切也当两个 | b=−6(a+1)3 时把「重根」数成两个零点,区间端点写闭 | 极小值 =0 时那一支只有一个零点,b 的区间两端都取开 |
| 极值条件写反 | 右支要两个零点,写成「F(0)<0 且 F(a+1)>0」 | 方向是端点值 F(0)>0、极小值 F(a+1)<0(即 b<0 且 b>−6(a+1)3);也别写成乘积 F(0)F(a+1)<0,那是「两个零点」里另一种情形的条件 |
| 只画一张草图就收工 | 跟着原卷把 a>1 那张也算成三个交点 | a>1 时左支翻到 x 轴上方,与右支分居两侧,总数封顶两个;草图要按 1−a 的符号分两类画 |
| 把必要条件当充要 | 由「选 D」反过来断言「a>−1 且 b<0 就有三个零点」 | D 只是必要条件;完整条件是 −1<a<1 且 −6(a+1)3<b<0 |
- 一条更省力的检查:拿一个具体数验一遍。a=21, b=−41 时零点是三个(图上幅),
a=2, b=−2 时只有两个(图下幅)——后者满足 D 却不足三个零点,同时验出了「D 是必要条件」这件事。
- 临界值只有两个,别多凑:a=−1 来自右支单调性的翻转(φ′ 的两个根合并),
a=1 来自左支斜率变号。前者选项里明写着,后者要自己算出来——这道题的分水岭就在于有没有算它。
- 「恰有三个零点」是等式,不是不等式:数完两支要相加后再比,不要在某一支上单独下「至少三个」这类判断。