题目描述
九宫格按键输入系统具有数字模式和英文模式两种输入方式,默认情况下为数字模式。在数字模式下,用户输入的数字会直接显示在屏幕上;在英文模式下,用户连续按同一个数字键会依次选择该键对应的字母。如果在英文模式下输入“/”或其他字符,则循环选择会被中断,当前停留的字母会被输出。
思路
对于题面描述的九宫格可以开个哈希表存,例如cpp

P3237.九宫格按键输入(200分)
题目内容
九宫格按键输入,有英文和数字两个模式,默认是数字模式,数字模式直接输出数字,英文模式连续按同一个按键会依次出现这个按键上的字母,如果输入 "/" 或者其他字符,则循环中断,输出此时停留的字母。
数字和字母的对应关系如下,注意 0 只对应空格:

输入一串按键,要求输出屏幕显示
- #用于切换模式,默认是数字模式,执行 # 后切换为英文模式;
- /表示延迟,例如在英文模式下,输入 22/222,显示为 bc,数字模式下 / 没有效果;
- 英文模式下,多次按同一键,例如输入 22222,显示为 b;
输入描述
输入范围为数字 0~9 和字符’#’、’/’,输出屏幕显示,例如:
- 在数字模式下,输入 1234,显示 1234
- 在英文模式下,输入 1234,显示 adg
输出描述
输出屏幕显示的字符
样例1
输入
2222/22
输出
222222
说明
默认数字模式,字符直接显示,数字模式下 / 无序
样例2
输入
#2222/22
输出
ab
说明
#进入英文模式,连续的数字输入会循环选择字母,直至输入 / ,故第一段 2222 输入显示 a ,第二段 22 输入显示 b
样例3
输入
#222233
输出
ae
说明
#进入英文模式,连续的数字输入会循环选择字母,直至输入其他数字,故第一段 2222 输入显示 a ,第二段 33 输入显示 e