文章目录

  • 1:题目
  • 2:代码实现

1:题目

请你计算按照手机键盘(9 键输入法)输入字母的方式,键入给定字符串(由小写字母构成)所花费的时间。具体键入规则和花费时间如下描述:对于同一键上的字符,例如 a,b,c 都在 “1” 键上,输入 a 只需要按一次,输入 c 需要连续按三次。如果连续两个字符不在同一个按键上,则可直接按,如:ad 需要按两下,kz 需要按 6 下。如果连续两字符在同一个按键上,则两个按键之间需要等一段时间,如 ac,在按了 a 之后,需要等一会儿才能按 c。现在假设每按一次需要花费一个时间段,等待时间需要花费两个时间段。输入格式
输入包含多组测试数据。每组数据占一行,包含一个由小写字母构成的字符串。输出格式
对于每组输入,输出一行结果表示键入给定字符串所需要花费的时间。数据范围
每个输入最多包含 100 组测试数据。
所有字符串的长度都不超过 100。输入样例:
bob
www
输出样例:
7
7
难度:简单
时/空限制:1s / 64MB
总通过数:943
总尝试数:1398
来源:清华大学考研机试题
算法标签

2:代码实现

#include <iostream>
#include <cstring>
#include <algorithm>using namespace std;const int number[] = {2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 7, 7, 7, 7, 8, 8, 8, 9, 9, 9, 9
};int main()
{string str;while (cin >> str){int res = 0, last = -1;for (auto c: str){int t = c - 'a';for (int i = t; i >= 0; i -- )if (number[i] == number[t])res ++ ;elsebreak;if (number[t] == number[last]) res += 2;last = t;}cout << res << endl;}return 0;
}

手机键盘(DAY 73)相关推荐

  1. 隐藏与显现_手机键盘摇一摇,隐藏功能立马显现,太棒了

    手机是我们每天都要用的,但如果我们把手机键盘给它摇一摇,它会有什么什么的作用呢?一起来看看吧! 第一个就是我们平时打字的时候,我们会打很多的字发给对方,如果突然间后悔了那么多的字,如果我们按删除键的话 ...

  2. 牛客网 -- 计算机历年考研复试上机题 -- 手机键盘

    题目描述 按照手机键盘输入字母的方式,计算所花费的时间 如:a,b,c都在"1"键上,输入a只需要按一次,输入c需要连续按三次. 如果连续两个字符不在同一个按键上,则可直接按,如: ...

  3. android+tv+无线键盘,手机键盘有那些 5款适合手机使用的无线键盘推荐

    现在我们热几乎人手拥有一台智能手机,我们可以用手机里面的输入法来进行打字或者聊天,平时使用起来还是比较方便了,但是需要用你的手机发一封电子邮件或者要写很多字的话,那么手机的输入法就不是那么合适呢,这是 ...

  4. onenetsim定位功能吗_经常玩手机的抓紧看看,原来手机键盘还隐藏4个实用功能,真实用...

    可爱的人都关注我了,就差你了 1 在日常生活中,大家对手机的依赖性越来越大,不管走到哪,时时刻刻都拿着手机发信息.可是,用了这么久的手机,你真的会用手机键盘吗?你知道手机键盘上隐藏的小功能吗?手机键盘 ...

  5. ionic4的input调用手机键盘将换行改成搜索

    ionic4的input调用手机键盘将换行改成搜索 我们在写输入框的时候通常会这样写,如下: <ion-input type="search" value="&qu ...

  6. 手机键盘(简单模拟)

    #题目描述 清华大学研究生复试机试真题 按照手机键盘输入字母的方式,计算所花费的时间 如:a,b,c都在"1"键上,输入a只需要按一次,输入c需要连续按三次. 如果连续两个字符不在 ...

  7. 【web前端特效源码】使用HTML5+CSS3+JavaScript制作一个复古手机键盘(带声音)的动画效果~~适合初学者~超简单~

    b站视频演示效果: [web前端特效源码]使用HTML5+CSS3制作一个复古手机键盘(带声音)的动画效果~~适合初学者~超简单~ |前端开发|IT软件 效果图: 完整代码: <!DOCTYPE ...

  8. ios input 无法自动聚焦拉起手机键盘

    产品又提蛋疼问题,其发现ios input无法自动聚焦拉起手机键盘,排查许久,发现这是ios本身限制,以下是找到比较可靠参考资料,可光明正大拒绝. input组件,autoFocus自动获取焦点不起作 ...

  9. 办理登机的英语词组手机键盘_如何使用智能手机使登机轻而易举

    办理登机的英语词组手机键盘 These days, it's easier than ever to board many of the most popular airlines using not ...

最新文章

  1. 在RHEL4上安装ORACLE9.2.04
  2. MySQL(五)MySQL事务
  3. Netflix:我们为什么要将GraphQL引入前端架构?\n
  4. installshield 指定多个自定义路径和文件
  5. python对比柱状图_python 绘制分组对比柱状图
  6. Ubuntu apt-get update 失败【转】
  7. 累斗累---走出软件作坊:三五个人十来条枪 如何成为开发正规军(二十)
  8. 记一个java和php都能调用的http接口
  9. 2年CFA三级考试连过的我,全靠笔记多!(无金融背景)
  10. 批量创建文件夹并命名的方法
  11. win8 机器硬盘异响
  12. matlab函数的线性化,[原创]非线性Simulink模型线性化方法讨论
  13. Symbian 清除栈 CleanupStack
  14. 用fact函数算阶乘
  15. (译)使用Go语言从零编写PoS区块链
  16. linux检查新增文件,linux查看文件内容
  17. 世界上最强大的两个字母的单词
  18. aliPay支付宝APP支付操作流程
  19. cocos2d 3.3 lua 代码加密 luac
  20. 从文本文件读取数据方法

热门文章

  1. python 生物信息学数据管理,2021-03-05 python 生物信息学数据管理
  2. 上传图片预览并在后台处理
  3. Go实战--golang中的JQUERY(PuerkitoBio/goquery、从html中获取链接)
  4. mllib调参 spark_Spark入门:MLlib基本数据类型(1)
  5. java如何创建jsp页面_JSP-Servlet入门3之创建web应用及JSP页面组成(一)
  6. 自己动手玩一把斗地主
  7. android 按钮水平居中,Android笔记:Button居中|水平居中|垂直居中(总结)
  8. mysql case when多条件同时满足的多个and组合嵌套的情况,判断空is null --- 系列一
  9. Win10共享文件夹的最简单最管用方法
  10. [AndroidR][ADB][Go]如何默认打开USB调试,去掉USB调试确认弹窗