1974. 使用特殊打字机键入单词的最少时间

关键点:

  1. 无论数组的开头第一位是什么,总是从a开始的,
  2. 从第一个字母向后走的时候有顺时针和逆时针,取最小值
  3. 当从第一个字母开始走的时候,用当前位置替换a的作用
    class Solution:def minTimeToType(self, word: str) -> int:position = 'a'time = 0for char in word:diff = abs(ord(char) - ord(position))step = min(diff, 26-diff)position = chartime += stepreturn (time + len(word))

    函数分析:

  • ord()函数:主要功能是将单个字符转换为其对应的Unicode码点。Unicode是一种字符编码标准,它允许使用相同的代码点来表示全球范围内的字符。

  • abs()函数:求绝对值

  • a = ord('a')
    print(a)  # 97
    b = ord('b')
    y = ord('y')
    print(y)   # 121print(a - y)   # -24
    print(abs(a - y))  # 24
    print(abs(a - b))  # 1

    ascII码,英文字母的差值都是1,Ascii完整码表(256个)_ascii码表-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/864148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实现资产优化管理:智慧校园资产分类功能解析

在构建智慧校园的过程中,细致入微的资产管理是确保教育资源高效运作的关键一环,而资产分类功能则扮演着举足轻重的角色。系统通过精心设计的分类体系,将校园内的各类资产,从昂贵的教学设备到日常使用的办公物资,乃至无…

嵌入式linux系统中动态链接库实现详解

大家好,linux系统中动态库是如何实现相互链接的?今天简单聊聊动态链接库的实现原理。 假设有这样两段代码,第一段代码定义了一个全量变量a以及函数foo,函数foo中引用了下一段代码中定义的全局变量b。 第二段代码定义了全局变量b以及main函数,同时在main函数中调用了第一个…

​Chrome插件:React Developer Tools为React开发调试而生

React Developer Tools 是什么? 它是允许在Chrome和Firefox开发者工具中检查React组件层次结构的扩展插件。 插件源码下载 源码下载地址:GitHub - facebook/react-devtools at v3 下载完成以后执行红框中的代码,下载react-devtools 源码,源码如下图所示: 插件打包 当前n…

表单外链,支持查看方式设置

06/19 主要更新模块概览 外链设置 跳转缩放 打印调整 数据校验 01 表单管理 1.1 【表单外链】-填写外链新增查看方式设置 说明: 原表单填写外链,填写字段权限和查看权限统一字段设置,用户在填写时看到数据与查看数据一致…

Qt 使用代码布局,而不使用UI布局

一、工程的建立: 1、打开Qt Creator,文件,新建文件或项目 2、选择Application,Qt Widgets Application 3、写入名称,选择qmake 4、选择基类Base class,去除Generate form 务必选择QWidget,若…

交友系统定制版源码| 相亲交友小程序源码全开源可二开_打造独特的社交交友系统

交友系统源码的实现涉及到多个方面,包括前端页面设计、后端逻辑处理、数据库设计以及用户交互等。以下是一个简单的交友系统源码实现的基本框架和关键步骤: 1.数据库设计:用户表:存储用户基本信息,如用户ID、用户名、密码、头像、性别、年龄、地理位置等…

『手撕Vue-CLI』 添加自定义指令

添加 create 指令 在 vue-cli 中,create 指令是用来创建一个新的项目的,我实现的 nue --help 的帮助信息中只有 --version,--help 这两个指令,所以当用户使用我的 nue-cli 时,并不知道有 create 这个指令,所…

【MySQL】事务实现原理

事务 事务是将一组SQL语句打包成一个整体,在这组SQL的执行过程中,要么全部成功,要么全部失败。这组SQL语句可以是一条也可以是多条。 如果转账成功,应该满足以下要求: 张三的账户余额减少100,变成900&…

Vatee万腾平台:引领行业变革,创新未来

在当今这个快速变化的时代,科技的力量正在以前所未有的速度推动着行业的变革。Vatee万腾平台,以其独特的视角和前瞻性的布局,正引领着行业变革的浪潮,创新着未来的发展方向。 Vatee万腾平台是一家专注于科技研发和创新应用的领军企…

安装PyTorch详细过程(个人过程仅供参考)

1.安装anaconda 2.创建一个虚拟环境 以上步骤默认已经完毕,毕竟只是记录pytorch的安装过程 3.查看个人电脑CUDA版本 winr 输入cmd 回车 输入指令 nvidia-smi 右上角为该电脑所支持的最高CUDA版本 输入命令 nvcc -V 图中即为该电脑所安装的CUDA版本 记住该版…

动捕系统如何解决“超出捕捉范围”的挑战

惯性运动捕捉系统改变了我们捕捉运动的方式,使艺术家、创作者和独立工作室能够摆脱动捕实验室和复杂设置的限制。通过身体上的传感器和无线连接,动捕演员可以自由移动和并作出各种高难度动作。然而具有高自由度的惯性动捕系统,经常面临着超出…

筛斗数据全面解析数据提取与清洗的重要性

筛斗数据全面解析数据提取与清洗的重要性 在数字化时代,数据是企业决策的重要依据。然而,数据并非总是以我们期望的形式出现,它们可能分散、冗余、错误甚至不完整。因此,数据提取与清洗成为数据处理流程中不可或缺的两个环节。筛…

数学建模 —— 矩阵的运算(上)

目录 调用函数运算 sum : 求和函数 prod : 求乘积函数(product) cumsum : 计算累积和(cumulative sum) diff : 计算差分(difference) mean : 计算平均值 (average) median : 计算中位数 mode : 计算众数 var : 计算方差 (variance) std : 计 算 标 准 差 (standard d…

UE5(c++)开发日志(2):向日志和屏幕输出信息/将C++类变为蓝图类

通过UE_LOG()向日志输出,向其传入三个参数(①输出日志类型,一般LogTemp ②具体种类,普通/警告/错误,这里是Warning ③输出的文本内容,使用TEXT(" "),这里是TEXT("Run AActor BeginPlay")) 代码写…

找茬找不同看图猜谜语小游戏

找茬找不同看图猜谜语小游戏:挑战你的观察力与智慧 🔍 挑战你的观察力:找茬找不同 你是否曾对两张看似相同的图片感到好奇,想要找出它们之间的微妙差异?找茬找不同小游戏正是为了满足你的这种好奇心而设计的。在这些游…

前端基础:CSS(篇一)

目录 css概述 CSS与HTML的关系 基本语法 行内样式表 代码 运行 内嵌样式表 代码 运行 外部样式表 代码 运行 选择器 标签选择器 代码 运行 id选择器 代码 运行 类选择器 代码 运行 选择器优先问题 通配选择器 选中所有的标签 代码 运行 选择器组…

记一次 .NET某网络边缘计算系统 卡死分析

一:背景 1. 讲故事 早就听说过有什么 网络边缘计算,这次还真给遇到了,有点意思,问了下 chatgpt 这是干嘛的 ? 网络边缘计算是一种计算模型,它将计算能力和数据存储位置从传统的集中式数据中心向网络边缘的用户设备、…

spring boot(学习笔记第十一课)

spring boot(学习笔记第十一课) Session共享,JPA实现自动RESTful 学习内容: Session共享JPA实现自动RESTful 1. Session共享 Session共享面临问题 spring boot默认将session保存在web server的内存里面,会产生什么问题呢。 如上图所示&#…

BUU CODE REVIEW 11 代码审计之反序列化知识

打开靶场&#xff0c;得到的是一段代码。 通过分析上面代码可以构造下面代码&#xff0c;获取到序列化之后的obj。 <?php class BUU {public $correct "";public $input "";public function __destruct() {try {$this->correct base64_encode(u…

一文get懂kwai短视频助力巴西博弈slots游戏广告优势

一文get懂kwai短视频助力巴西博弈slots游戏广告优势 在数字化时代&#xff0c;短视频广告凭借其独特的魅力和高效的传播方式&#xff0c;成为了各大品牌进行营销推广的重要手段。特别是在巴西这个充满活力的国家&#xff0c;kwai短视频广告以其独特的方式&#xff0c;为博弈游…