浙江 2017 · 数学 q04

题解图(原卷截图 · 含答案与官方解析)

浙江 2017 · 数学 q04 原卷截图(含答案)

文字转写(题面 + 答案)

题面

4.(5 分)若 xx、yy 满足约束条件 {x⩾0x+y−3⩾0x−2y⩽0\left\{\begin{array}{l}x \geqslant 0 \\ x + y - 3 \geqslant 0 \\ x - 2 y \leqslant 0\end{array}\right.,则 z=x+2yz = x + 2 y 的取值范围是(  )

A.[0,6][0,6]  B.[0,4][0,4]  C.[6,+∞)[6,+\infty)  D.[4,+∞)[4,+\infty)

答案

D

本题的知识树

2 概念 · 1 定理 · 1 题型 · 4 套路 · 2 易错点 · 最深 3 层。长链是构建期派生的,源文件里只有最小一步。

攻略(零基础 → 会做)

可行域朝上不收口 · 上头没拦住不等于下头没卡死,zz 的范围是 [4,+∞)[4,+\infty) · 最终答案:D

冷启动:先把区域摸清楚——它不收口,而且原点不在里面

约束与目标是

{x⩾0,x+y−3⩾0,x−2y⩽0,z=x+2y.\begin{cases} x\geqslant 0,\\[2pt] x+y-3\geqslant 0,\\[2pt] x-2y\leqslant 0, \end{cases} \qquad z=x+2y .

三条边界线 x=0x=0、x+y=3x+y=3、x=2yx=2y 两两求交,得三个候选点;交点未必可行,必须逐个回代:

交点x⩾0x\geqslant 0x+y−3⩾0x+y-3\geqslant 0x−2y⩽0x-2y\leqslant 0可行?
x=0x=0 与 x+y=3x+y=3:(0,3)(0,3)0⩾00\geqslant 0 ✓0⩾00\geqslant 0 ✓0−6=−6⩽00-6=-6\leqslant 0 ✓可行
x=0x=0 与 x=2yx=2y:(0,0)(0,0)0⩾00\geqslant 0 ✓−3⩾0-3\geqslant 0 ✗0⩽00\leqslant 0 ✓不可行
x+y=3x+y=3 与 x=2yx=2y:(2,1)(2,1)2⩾02\geqslant 0 ✓0⩾00\geqslant 0 ✓2−2=0⩽02-2=0\leqslant 0 ✓可行

第二行那个 ✗ 是这道题的全部麻烦所在:原点 (0,0)(0,0) 不是可行点。 代原点定半平面方向是习惯动作,但原点本身进不了这片区域, 所以「把原点代进 zz 得到最小值 00」这条路从第一步就是断的。

留下的两个可行交点是 (0,3)(0,3) 与 (2,1)(2,1),它们之间的那条线段躺在 x+y=3x+y=3 上。 区域的另外两条边从这两个点出发向上延伸:(0,3)(0,3) 沿 x=0x=0 往上,(2,1)(2,1) 沿 x=2yx=2y 往右上。 两条射线越走越开,中间那一片就是可行域——一块由两个角点 (0,3)(0,3)、(2,1)(2,1) 与三条边围成、朝上张开、永远不收口的区域(它不是一块有界的三角区域,也不含原点)。

不收口这件事可以一句话钉死:取 (0,100)(0,100),三条约束是 0⩾00\geqslant 0、0+100−3⩾00+100-3\geqslant 0、0−200⩽00-200\leqslant 0, 全都成立,而

z=0+2×100=200.z=0+2\times 100=200 .

200200 既不在 [0,6][0,6] 里也不在 [0,4][0,4] 里,所以 A、B 当场出局—— 剩下的只是问「下头卡在哪」。

平面直角坐标系的一张教学图,横轴从约 -1.4 到 9、纵轴从约 -1.2 到 5.1,不带网格,坐标轴是浅灰色。三条灰色实线是可行域的边界:竖直的 x=0(贴着纵轴,标注写在下半段)、从左上斜向右下的 x+y=3(标注写在左上端)、从左下斜向右上的 x=2y(标注写在右端)。x=0 与 x=2y 从交点向上张开,中间那一片被淡蓝色填充,顶到画面上边缘仍未收口,右边被 x=2y 斜着切住。区域的角点 (2,1) 画成绿色实心圆点,右下方绿字标着「(2,1):z 最小 =4」;另一个可行交点 (0,3) 画成深蓝黑色实心圆点,右上方标着「(0,3)」。原点处画一个红色空心圆圈,右下方红字写「O 不在可行域里」。四条斜率为 -\frac12 的平行虚线是 z 的等值线,从左下到右上依次标注 z=4、z=6、z=10、z=14;其中 z=4 那条用绿色加粗,正好擦过角点 (2,1),其余三条是灰色细虚线。区域内部靠右上角处有一支深蓝色箭头,沿着与等值线垂直的方向斜向右上,箭尾左侧写着「z 变大的方向」。图的标题是「可行域朝上张开、永远不收口:z=x+2y 有最小值,没有最大值」。

下面三条路:一条老老实实画图推等值线,一条一张图都不画、直接把不等式配出来, 一条只管四个选项、代两个点了事。

解法一:画可行域,把 zz 的等值线推过去

第一步:三个半平面各定一侧

  • x⩾0x\geqslant 0:直线 x=0x=0 的右侧(含边界)。
  • x+y−3⩾0x+y-3\geqslant 0:代 (0,0)(0,0) 得 −3<0-3<0 不合,所以取直线 x+y=3x+y=3 不含原点的那一侧,即右上侧。
  • x−2y⩽0x-2y\leqslant 0,即 y⩾x2y\geqslant\dfrac{x}{2}:代 (1,0)(1,0) 得 1>01>0 不合,所以取直线 x=2yx=2y 不含 (1,0)(1,0) 的那一侧,即左上侧。

第二步:把三条边界两两求交,逐个回代,定出形状

  • x=0x=0 与 x+y=3x+y=3:得 (0,3)(0,3)。回代第三条:0−2×3=−6⩽00-2\times3=-6\leqslant 0 ✓,可行。
  • x=0x=0 与 x=2yx=2y:得 (0,0)(0,0)。回代第二条:0+0−3=−3⩾00+0-3=-3\geqslant 0 ✗,不可行——原点被挡在外面。
  • x+y=3x+y=3 与 x=2yx=2y:由 x=2yx=2y 代入得 3y=33y=3,y=1y=1、x=2x=2,即 (2,1)(2,1)。回代第一条:2⩾02\geqslant 0 ✓,可行。

于是可行域有两个角点 (0,3)(0,3) 与 (2,1)(2,1),三条边:

  • (0,3)(0,3) 与 (2,1)(2,1) 之间的线段,躺在 x+y=3x+y=3 上;
  • 从 (0,3)(0,3) 沿 x=0x=0 向上的射线;
  • 从 (2,1)(2,1) 沿 x=2yx=2y 向右上的射线。

两条射线都跑到无穷远,所以这是一片无界的区域。它不是一块有界的三角区域,也不含原点。

第三步:把 zz 读成截距,定出「往哪推变大」

把 z=x+2yz=x+2y 解成

y=−12x+z2,y=-\frac{1}{2}x+\frac{z}{2},

这是一族斜率固定为 −12-\dfrac12 的平行线,纵截距是 z2\dfrac{z}{2}。 yy 的系数 2>02>0,所以截距越大 zz 越大——直线往上(往右上)平移,zz 增大;往下平移,zz 减小。

这一步就是本题唯一容易把答案做反的地方:若把方向记反,推到底会报出一个「最大值 44」来。 判据只有一条——看 yy 的系数的正负,别看图上的感觉。

第四步:往上推——推不到头

区域朝上不收口:沿 x=0x=0 那条射线取 (0,t)(0,t),tt 要多大有多大,三条约束全成立, 而 z=2tz=2t 跟着任意大。所以等值线一直往上推都还碰得到区域,zz 没有最大值,也没有上界。

第五步:往下推——两个角点比一比

往下推,等值线最后离开区域的地方只可能是角点。两个角点各代一次:

z(0,3)=0+2×3=6,z(2,1)=2+2×1=4.z(0,3)=0+2\times 3=6,\qquad z(2,1)=2+2\times 1=4 .

4<64<6,所以候选的最小值是 (2,1)(2,1) 处的 44。(图上 z=6z=6 那条等值线确实比 z=4z=4 那条靠上。)

第六步:无界的那一头必须验——从角点沿两条边各走一步

「最后离开的角点给出最值」这句话是对有界区域说的。区域无界时得补一句: 从角点往区域里走,zz 会不会反而掉下去?

角点 (2,1)(2,1) 处夹出区域的两条边,方向向量(都指向区域内部)是

d1⃗=(−1,1) (沿 x+y=3 指向 (0,3)),d2⃗=(2,1) (沿 x=2y 往右上).\vec{d_1}=(-1,1)\ (\text{沿 } x+y=3 \text{ 指向 } (0,3)),\qquad \vec{d_2}=(2,1)\ (\text{沿 } x=2y \text{ 往右上}).

先确认整片区域都被这个角罩住。设 (x,y)(x,y) 可行,把它写成

(x,y)=(2,1)+s d1⃗+t d2⃗,(x,y)=(2,1)+s\,\vec{d_1}+t\,\vec{d_2},

即 x=2−s+2tx=2-s+2t、y=1+s+ty=1+s+t。两式相加得 x+y=3+3tx+y=3+3t,两倍第二式减第一式得 2y−x=3s2y-x=3s,于是

t=x+y−33⩾0,s=2y−x3⩾0,t=\frac{x+y-3}{3}\geqslant 0,\qquad s=\frac{2y-x}{3}\geqslant 0,

——两个系数非负,正是第二、第三条约束本身。所以每个可行点都在这个角里。

z=x+2yz=x+2y 沿方向 (dx,dy)(d_x,d_y) 每走单位参数的变化量是 dx+2dyd_x+2d_y:

d1⃗: −1+2×1=1>0,d2⃗: 2+2×1=4>0.\vec{d_1}:\ -1+2\times 1=1>0,\qquad \vec{d_2}:\ 2+2\times 1=4>0 .

两条边上 zz 都在涨,而整片区域就装在这个角里,所以从角点往区域里走,zz 只会变大—— (2,1)(2,1) 处的 44 是真正的最小值,而且它自己就是可行点,取得到。

(顺带看另一个角点 (0,3)(0,3):它的两条边方向是 (1,−1)(1,-1)(回到 (2,1)(2,1))与 (0,1)(0,1)(沿 x=0x=0 往上), zz 的变化率是 1−2=−1<01-2=-1<0 与 0+2=2>00+2=2>0,一正一负——所以 (0,3)(0,3) 既不给最大也不给最小, 只是折线上的一个拐点。这也说明「角点」本身不等于「最值点」,得看方向。)

第七步:[4,+∞)[4,+\infty) 里的每个数都够得着

到这里只证到「z⩾4z\geqslant 4、且 44 取得到、上面没有界」。还差一句:中间的数会不会有漏? 沿 d2⃗\vec{d_2} 从角点往外走,

(2,1)+t(2,1)=(2+2t, 1+t)(t⩾0)(2,1)+t(2,1)=(2+2t,\ 1+t)\quad(t\geqslant 0)

全在区域里(x=2+2t⩾0x=2+2t\geqslant 0;x+y−3=3t⩾0x+y-3=3t\geqslant 0;x−2y=(2+2t)−2(1+t)=0⩽0x-2y=(2+2t)-2(1+t)=0\leqslant 0), 而 z=(2+2t)+2(1+t)=4+4tz=(2+2t)+2(1+t)=4+4t 随 tt 连续地从 44 跑到 +∞+\infty。单这一条射线就把 [4,+∞)[4,+\infty) 走遍了。

所以

z∈[4,+∞),z\in[4,+\infty),

选 D。

解法二:一张图都不画——把 z−4z-4 配成两条约束的非负组合

画图费时间,也容易把半平面的方向定反。这条路把三条约束当成三个非负的量直接凑。

第一步:把约束写成「某个式子 ⩾0\geqslant 0」

u1=x⩾0,u2=x+y−3⩾0,u3=2y−x⩾0.u_1=x\geqslant 0,\qquad u_2=x+y-3\geqslant 0,\qquad u_3=2y-x\geqslant 0 .

(第三条就是 x−2y⩽0x-2y\leqslant 0 两边乘 −1-1。)

第二步:待定系数,把 z−mz-m 凑成它们的非负系数组合

设

x+2y−m=λ1u2+λ2u3=λ1(x+y−3)+λ2(2y−x),x+2y-m=\lambda_1 u_2+\lambda_2 u_3=\lambda_1(x+y-3)+\lambda_2(2y-x),

两边比系数:

x: λ1−λ2=1,y: λ1+2λ2=2,常数: −3λ1=−m.x:\ \lambda_1-\lambda_2=1,\qquad y:\ \lambda_1+2\lambda_2=2,\qquad \text{常数}:\ -3\lambda_1=-m .

前两式相减得 3λ2=13\lambda_2=1,于是

λ2=13,λ1=1+13=43,m=3λ1=4.\lambda_2=\frac{1}{3},\qquad \lambda_1=1+\frac{1}{3}=\frac{4}{3},\qquad m=3\lambda_1=4 .

两个系数都是正的——这正是这套凑法能用的前提:非负系数乘非负量再相加,结果还是非负。 于是得到一个在可行域上处处成立的恒等式

x+2y−4=43(x+y−3)+13(2y−x)⩾0.x+2y-4=\frac{4}{3}(x+y-3)+\frac{1}{3}(2y-x)\geqslant 0 .

(这条恒等式对平面上任何一点都成立,展开两边核一下即可: 右边 =43x+43y−4−13x+23y=x+2y−4=\frac43 x+\frac43 y-4-\frac13 x+\frac23 y=x+2y-4。不等号那一步才用到可行域。)

第三步:等号什么时候成立

右边两项都非负,和为零当且仅当两项都为零:

x+y−3=0 且 2y−x=0  ⟺  x=2y 且 3y=3  ⟺  (x,y)=(2,1).x+y-3=0\ \text{且}\ 2y-x=0 \iff x=2y\ \text{且}\ 3y=3 \iff (x,y)=(2,1).

(2,1)(2,1) 还满足第一条约束 x=2⩾0x=2\geqslant 0,是真可行点,所以下界 44 不只是界,是取得到的最小值。

(注意第一条约束 x⩾0x\geqslant 0 在这条恒等式里没用上——这不是漏了, 而是说明在 u2⩾0u_2\geqslant 0、u3⩾0u_3\geqslant 0 这两条之下 z⩾4z\geqslant 4 已经成立; x⩾0x\geqslant 0 只影响区域长什么样,不影响这个下界。而等号点 (2,1)(2,1) 恰好也满足它,所以下界确实够得着。)

第四步:上头没有界

沿 x=0x=0 这条边取点 (0,t)(0,t),t⩾3t\geqslant 3 时三条约束全成立,而 z=2tz=2t 可以任意大。 再加上 zz 在连通的可行域上连续、下端 44 取到,取值范围就是

z∈[4,+∞),z\in[4,+\infty),

选 D。

解法三:选择题的最短路——代两个点,三个选项当场出局

四个选项摆在那儿:[0,6][0,6]、[0,4][0,4]、[6,+∞)[6,+\infty)、[4,+∞)[4,+\infty)。 正确的那个必须装得下每一个可行点算出的 zz。找两个好算的可行点就够了。

第一步:找一个让 zz 很大的可行点,砍掉两个有界选项

取 (0,100)(0,100):

x=0⩾0 ✓,0+100−3=97⩾0 ✓,0−200=−200⩽0 ✓.x=0\geqslant 0\ \checkmark,\qquad 0+100-3=97\geqslant 0\ \checkmark,\qquad 0-200=-200\leqslant 0\ \checkmark .

真可行,且 z=0+200=200z=0+200=200。200∉[0,6]200\notin[0,6]、200∉[0,4]200\notin[0,4],A、B 出局。

(这个点是这么挑的:让 x=0x=0 省掉一条约束,yy 取得足够大,另外两条就自动成立。 用特殊值排选项之前一定先验它真的满足全部条件——不可行的点算出来的 zz 说明不了任何事。)

第二步:找一个让 zz 很小的可行点,砍掉剩下那个

取角点 (2,1)(2,1):三条约束是 2⩾02\geqslant 0、2+1−3=0⩾02+1-3=0\geqslant 0、2−2=0⩽02-2=0\leqslant 0,全成立,而

z=2+2=4.z=2+2=4 .

4∉[6,+∞)4\notin[6,+\infty),C 出局。四个选项只剩 D。

第三步:这条路的边界在哪儿

排除法只在「四个选项恰有一个对」这个前提下才闭合:它证明了 A、B、C 都不对, 没有独立地证明 z⩾4z\geqslant 4。真要放心,把解法二第二步那一行恒等式补上即可—— 一行字就把下界证死了,两条路合起来才是完整的解答。

顺带一提:很多人第一反应是代原点 (0,0)(0,0) 得 z=0z=0,于是在 A、B 之间挑。 但原点 0+0−3=−3<00+0-3=-3<0,根本不在可行域里,这个 00 是凭空来的。 排除法的第一道工序是验可行,不是算值。

回头看:这道题真正在考什么

三条路殊途同归,考的都是同一件事:「区域无界」和「zz 没有最值」不是一回事。

  • 区域往哪儿伸得没有尽头,是几何;
  • zz 沿那个方向是涨是跌,由目标式的系数说了算。

本题在角点 (2,1)(2,1) 处,两条边上 zz 都在涨(解法一第六步算的那两个 11 和 44), 所以上头确实没有拦住、下头却被角点牢牢卡死。 把「无界」直接读成「取值范围是 (−∞,+∞)(-\infty,+\infty)」或「无最值」,就会连 D 也选不出来。

一句话记住这道题:先验原点在不在区域里,再看两条边上 zz 往哪边走; 角点给下界、张开的方向给无穷,答案就是 [4,+∞)[4,+\infty)。

原卷错在哪

这道题的原卷【答案】栏印的是 A,本站校订层(q04-fix.md)把它改成了 D。 改结论是很重的动作,所以把原卷的每一步错在哪儿摊开来说:

  1. 原卷解答的第一句就用了一个不可行的点。 它写「目标函数 z=x+2yz=x+2y 经过坐标原点时,函数取得最小值」, 可原点代进第二条约束是 0+0−3=−3<00+0-3=-3<0——原点不在可行域里,谈不上在它那里取最小值。
  2. 原卷配的那张图画的是另一个区域。 图上是一片含原点的有界区域,角在 (0,0)(0,0)、(0,3)(0,3)、(2,1)(2,1) 附近, 那是把 x+y−3⩾0x+y-3\geqslant 0 当成 x+y−3⩽0x+y-3\leqslant 0 画出来的。题面两处印的都是 ⩾\geqslant。
  3. 顺着那张错图,zz 的范围自然成了 [0,6][0,6](在 (0,0)(0,0) 取 00、在 (0,3)(0,3) 取 66), 于是选了 A。四个选项里恰好备着 [0,6][0,6],错得很顺手。
  4. 按题面印的 ⩾\geqslant 算,答案只能是 D:(0,100)(0,100) 可行而 z=200z=200,[0,6][0,6] 与 [0,4][0,4] 都装不下(上面解法三第一步); (2,1)(2,1) 可行而 z=4z=4,[6,+∞)[6,+\infty) 也装不下(第二步);而 z⩾4z\geqslant 4 有解法二那一行恒等式撑着。

换句话说,原卷是题面按 ⩾\geqslant 印、图与解答按 ⩽\leqslant 做,两边自相矛盾。 题面是第一手的,所以以题面为准。原卷解答里「目标函数的直线为:00,最大值为:3636」那句残句, 以及整段按 ⩽\leqslant 展开的推导,都照原样留在校订层的【解析】段里,只作证据,不作依据。