GESP 五级 · GESP 202409 C++ 五级 第 14 题

选择题 · 答案 C · 考点:算法

← 整套速查表 GESP 五级 全部真题

题目

以下关于高精度运算的说法错误的是( )。

答案:C

考点

算法

解题思维

逐项分析每个选项,利用C++语法规则和算法知识判断正误。注意隐含条件(如整型溢出、栈溢出)。

常见错误

注意题目问的是"错误的是"还是"正确的是",避免看反。选项中若有绝对化表述通常错误。

详细解析(节选)

【考点】大整数运算|高精度算法复杂度|乘法复杂度

考纲定位:本题出自 GESP 五级“基础算法”模块的高精度计算专题,卡住的是考生“只会手写大数却不懂复杂度本质”的致命弱点。命题人专挑“时间复杂度与位数关系”的抽象概念,因为这是五级与四级、五级与六级的核心分水岭。

解题思维:逐选项验证。A 为定义性正确;B 描述“大数÷小数”的手算除法流程,完全吻合;D 描述加法进位机制,无可争议。C 断言“乘法时间只与较长数位数有关”,但实际复杂度为 O(长数位数×短数位数),甚至 Karatsuba 等优化仍依赖两数长度,故 C 错。核心观察点是“乘法复杂度 = 两数位数之积”,而非单一方程。

陷阱拆解:命题人最阴险的设计是偷换“结果位数”与“计算时间”概念。C 选项故意只提较长数,诱导考生用“结果位数≈较长数位数”的错误直觉。若只看代码实现,误以为乘法时间随较长数线性增长,就会掉进这个坑。其实加法、除法的时间复杂度通常只与较长数位数(或较短数位数)线性相关,唯独乘法是两者乘积。

反命题思维:若把 C 改为“高精度加法时间只与较长数位数有关”,答案就会变成正确,因为加法确实是 O(长数位数)。若改成“高精度除法时间只与较短数位数有关”,则错误,因为除法复杂度仍与较长数位数相关。刷到此类题,先问自己“命题人想考我什么”,再回溯复杂度公式。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断