手机键盘(DAY 73)
文章目录
- 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)相关推荐
- 隐藏与显现_手机键盘摇一摇,隐藏功能立马显现,太棒了
手机是我们每天都要用的,但如果我们把手机键盘给它摇一摇,它会有什么什么的作用呢?一起来看看吧! 第一个就是我们平时打字的时候,我们会打很多的字发给对方,如果突然间后悔了那么多的字,如果我们按删除键的话 ...
- 牛客网 -- 计算机历年考研复试上机题 -- 手机键盘
题目描述 按照手机键盘输入字母的方式,计算所花费的时间 如:a,b,c都在"1"键上,输入a只需要按一次,输入c需要连续按三次. 如果连续两个字符不在同一个按键上,则可直接按,如: ...
- android+tv+无线键盘,手机键盘有那些 5款适合手机使用的无线键盘推荐
现在我们热几乎人手拥有一台智能手机,我们可以用手机里面的输入法来进行打字或者聊天,平时使用起来还是比较方便了,但是需要用你的手机发一封电子邮件或者要写很多字的话,那么手机的输入法就不是那么合适呢,这是 ...
- onenetsim定位功能吗_经常玩手机的抓紧看看,原来手机键盘还隐藏4个实用功能,真实用...
可爱的人都关注我了,就差你了 1 在日常生活中,大家对手机的依赖性越来越大,不管走到哪,时时刻刻都拿着手机发信息.可是,用了这么久的手机,你真的会用手机键盘吗?你知道手机键盘上隐藏的小功能吗?手机键盘 ...
- ionic4的input调用手机键盘将换行改成搜索
ionic4的input调用手机键盘将换行改成搜索 我们在写输入框的时候通常会这样写,如下: <ion-input type="search" value="&qu ...
- 手机键盘(简单模拟)
#题目描述 清华大学研究生复试机试真题 按照手机键盘输入字母的方式,计算所花费的时间 如:a,b,c都在"1"键上,输入a只需要按一次,输入c需要连续按三次. 如果连续两个字符不在 ...
- 【web前端特效源码】使用HTML5+CSS3+JavaScript制作一个复古手机键盘(带声音)的动画效果~~适合初学者~超简单~
b站视频演示效果: [web前端特效源码]使用HTML5+CSS3制作一个复古手机键盘(带声音)的动画效果~~适合初学者~超简单~ |前端开发|IT软件 效果图: 完整代码: <!DOCTYPE ...
- ios input 无法自动聚焦拉起手机键盘
产品又提蛋疼问题,其发现ios input无法自动聚焦拉起手机键盘,排查许久,发现这是ios本身限制,以下是找到比较可靠参考资料,可光明正大拒绝. input组件,autoFocus自动获取焦点不起作 ...
- 办理登机的英语词组手机键盘_如何使用智能手机使登机轻而易举
办理登机的英语词组手机键盘 These days, it's easier than ever to board many of the most popular airlines using not ...
最新文章
- 在RHEL4上安装ORACLE9.2.04
- MySQL(五)MySQL事务
- Netflix:我们为什么要将GraphQL引入前端架构?\n
- installshield 指定多个自定义路径和文件
- python对比柱状图_python 绘制分组对比柱状图
- Ubuntu apt-get update 失败【转】
- 累斗累---走出软件作坊:三五个人十来条枪 如何成为开发正规军(二十)
- 记一个java和php都能调用的http接口
- 2年CFA三级考试连过的我,全靠笔记多!(无金融背景)
- 批量创建文件夹并命名的方法
- win8 机器硬盘异响
- matlab函数的线性化,[原创]非线性Simulink模型线性化方法讨论
- Symbian 清除栈 CleanupStack
- 用fact函数算阶乘
- (译)使用Go语言从零编写PoS区块链
- linux检查新增文件,linux查看文件内容
- 世界上最强大的两个字母的单词
- aliPay支付宝APP支付操作流程
- cocos2d 3.3 lua 代码加密 luac
- 从文本文件读取数据方法
热门文章
- python 生物信息学数据管理,2021-03-05 python 生物信息学数据管理
- 上传图片预览并在后台处理
- Go实战--golang中的JQUERY(PuerkitoBio/goquery、从html中获取链接)
- mllib调参 spark_Spark入门:MLlib基本数据类型(1)
- java如何创建jsp页面_JSP-Servlet入门3之创建web应用及JSP页面组成(一)
- 自己动手玩一把斗地主
- android 按钮水平居中,Android笔记:Button居中|水平居中|垂直居中(总结)
- mysql case when多条件同时满足的多个and组合嵌套的情况,判断空is null --- 系列一
- Win10共享文件夹的最简单最管用方法
- [AndroidR][ADB][Go]如何默认打开USB调试,去掉USB调试确认弹窗