NOIP 提高组初赛 · NOIP 2016 提高组初赛试题 第 2 题

选择题 · 答案 A · 考点:CPU组成与工作原理

← 整套速查表 NOIP 提高组初赛 全部真题

题目

如果开始时计算机处于小写输入状态,现在有一只小老鼠反复按照 CapsLock、字母键 A、字母键 S 和字母键 D 的顺序来回按键,即 CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、CapsLock、A、S、D、S、A、……,屏幕上输出的第 81 个字符是字母( )。

答案:A

考点

CPU组成与工作原理

解题思维

这题别急着按计算器,先看清按键序列里藏着两个循环:一个是'CapsLock+A+S+D+S+A'的6键大周期,另一个是'每按一次CapsLock大小写状态翻转'的小周期。81个字符对应第17组的第1个,奇数组是大写,所以直接锁定答案。

常见错误

最容易掉进的坑是把CapsLock当成输出字符,算出81=16×5+1后误以为第17组第1个是CapsLock本身,或者忽略大小写状态切换导致选成小写a。还有学生容易把序列当成'CapsLock,A,S,D,A,S'这种5键循环,漏掉了D后面还有一个S,导致分组长度算错,进而定位偏差。

详细解析(节选)

这道题考查的是带状态切换的周期序列模拟,属于计算机基础操作常识,在NOIP初赛里这类题每年必出,用来检验学生是否真正理解键盘逻辑而不是死记硬背。命题人最爱挖的坑就是'CapsLock不输出字符'和'大小写状态交替',这两个点必须同时抓住。拿到题先想什么?先拆解序列:C(CapsLock)、A、S、D、S、A,一共6个按键。其中C只是切换状态,不产生输出,所以每组实际输出5个字符。状态呢?题目说开始是小写,按一次C变大写,再按一次变回小写,所以奇数组(第1、3、5…)输出大写,偶数组输出小写。现在要第81个字符,81除以5商16余1,说明前16组输出了80个字符,第81个是第17组的第1个。第17组是奇数组,状态为大写,第1个输出的键是A,所以答案就是大写A。避坑方面,千万别把C算进输出,那样周期就变成5了,81=16×5+1,你会误以为第17组第1个是C;也别把序列记错成5个一循环,那样第17组第1个可能变成S或者D。考频趋势上看,CPU组成与工作原理类题目在NOIP提高组初赛共考过8题,2016年出了2题,2023年出了4题,说明这类基础逻辑题热度不减,未来大概率还会以'带状态切换的周期'或'多条件判断的序列'形式出现。暂无足够依据预测具体年份考题,但建议学生把'CapsLock不输出'和'奇偶组大小写'这两个点刻在脑子里,遇到类似题直接秒杀。

同考点真题

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