跳转至

ABC241A Digit Machine

题目分析

设备屏幕初始显示数字 0
每次按按钮,屏幕上的数字 k 会变成数组 a[k] 对应的数字。

题目要求按下按钮 3次 后,屏幕显示的数字是什么。


解题思路

  • 初始数字是 0
  • 按钮第 1 次按后数字变成 a[0]
  • 按钮第 2 次按后数字变成 a[a[0]]
  • 按钮第 3 次按后数字变成 a[a[a[0]]]

我们只需模拟三次映射即可。


实现步骤

  • 定义整型数组 a[10]
  • 读入 $10$ 个数字填充数组存储到 $a_0\sim a_9$;
  • 初始化 x = 0
    • 执行三次 x = a[x]
  • 输出 x

复杂度分析

  • 时间复杂度:$O(1)$,仅进行固定 $3$ 次数组访问;
  • 空间复杂度:$O(1)$,只存储长度为 $10$ 的数组。

总结

  • 本题是简单的模拟题;
  • 只需根据映射关系重复三次即可;
  • 注意数组下标和输入对应;
  • 适合初学者练习数组和模拟操作。