转换后字符串的数字总和

转换后字符串的数字总和

1945 年。转换后字符串的数字总和

难度:简单

主题:字符串、模拟

给你一个由小写英文字母组成的字符串 s 和一个整数 k。

首先, s 转换为整数,方法是将每个字母替换为其在字母表中的位置(即,将 ‘a’ 替换为 1,将 ‘b’ 替换为 2,…,将 ‘z’ 替换为26)。然后,转换整数,将其替换为其数字之和。总共重复变换操作k

例如,如果 s = “zbax” 且 k = 2,则通过以下操作得到的整数将为 8:

转换:“zbax”➝“(26)(2)(1)(24)”➝“262124”➝262124变换 #1: 262124 ➝ 2 + 6 + 2 + 1 + 2 + 4 ➝ 17变换 #2: 17 ➝ 1 + 7 ➝ 8

返回执行上述操作后得到的整数

示例1:

输入: s = “iiii”, k = 1输出: 36说明:操作如下:转换:“iiii”➝“(9)(9)(9)(9)”➝“9999”➝9999变换 #1:9999 ➝ 9 + 9 + 9 + 9 ➝ 36因此结果整数是 36。

示例2:

输入: s = “leetcode”, k = 2输出: 6说明:操作如下:转换:“leetcode”➝“(12)(5)(5)(20)(3)(15)(4)(5)”➝“12552031545”➝12552031545变换 #1:12552031545 ➝ 1 + 2 + 5 + 5 + 2 + 0 + 3 + 1 + 5 + 4 + 5 ➝ 33变换 #2:33 ➝ 3 + 3 ➝ 6因此结果整数是 6。

示例 3:

输入: s = “zbax”, k = 2输出: 8

约束:

1 1 s 由小写英文字母组成。

提示:

首先,我们要注意,第一次变换后的值最多为 100 * 10,这个值并不多第一个变换之后,我们可以通过暴力来完成其余的变换

解决方案:

我们可以将解决方案分为两个主要步骤:

将字符串 s 转换为整数:

字符串中的每个字符都会替换为字母表中相应的位置(例如,’a’ -> 1、’b’ -> 2、…、’z’ -> 26)。将所有这些数字连接起来形成一个大整数。

通过将整数的数字相加 k 次来转换整数:

对于每个变换,将当前数字的所有数字相加。重复此转换过程 k 次。

让我们用 php 实现这个解决方案:1945。转换后字符串的数字总和


解释:

转换字符串:

我们循环遍历字符串 s 中的每个字符,并使用 ord($s[$i]) – ord(‘a’) + 1 计算其对应的字母位置。这些值连接起来形成一个代表数字的大字符串 numstr。

转换数字:

我们循环 k 次,每次对当前 numstr 的数字求和。此求和运算的结果作为字符串存储回 numstr 中,以允许进一步转换。经过 k 次变换,我们返回最终的整数值。

测试用例:

k = 1 的“iiii”转换为“9999”,总和为 36,由于 k=1,最终结果为 36。k = 2 的“leetcode”转换为“12552031545”,在第一次转换中总和为 33,在第二次转换中为 6,结果为 6。k = 2 的“zbax”转换为“262124”,在第一次转换中总计为 17,在第二次转换中总计为 8,结果为 8。

考虑到限制,该解决方案非常有效,并且在提供的限制内可以很好地工作。

联系链接

如果您发现本系列有帮助,请考虑在 github 上给存储库 一个星星,或在您最喜欢的社交网络上分享该帖子?。您的支持对我来说意义重大!

如果您想要更多类似的有用内容,请随时关注我:

领英github

以上就是转换后字符串的数字总和的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1246096.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月9日 18:17:54
下一篇 2025年12月8日 13:50:27

相关推荐

  • 关于 PHP 代码安全性您应该了解的内容

    在 web 开发方面,php 是一种广泛使用的脚本语言。随着 php 的流行,了解与 php 相关的潜在安全风险以及缓解这些风险的措施至关重要。无论您使用 wordpress 部署 cms 应用程序还是使用 laravel php 框架构建企业应用程序,php 安全性的重要性以及一些值得注意的 ph…

    2025年12月9日
    000
  • 找到将更换粉笔的学生

    1894。找到将替换粉笔的学生 难度:中等 主题:数组、二分查找、模拟、前缀和 一个班级有n个学生,编号从0到n – 1。老师会给每个学生一个问题,从学号0开始,然后是学号1,以此类推,直到老师达到学号n – 1. 之后,老师将重新开始该过程,再次从学号0开始。 给你一个0索…

    2025年12月9日
    000
  • 连接两组点的最低成本

    1595。连接两组点的最低成本 难度:难 主题:数组、动态规划、位操作、矩阵、位掩码 给你两组点,第一组有大小1点,第二组有大小2点,大小1 >=尺寸2. 任意两点之间的连接成本以大小 1 x size2 矩阵给出,其中 cost[i][j] 是连接点 i 的成本第一组和第二组的 j 点。如果…

    2025年12月9日
    000
  • 修改图边权重

    2699。修改图边权重 难度:难 主题:图、堆(优先级队列)、最短路径 给你一个无向加权连通图,其中包含标记为0到n – 1的n个节点,以及一个整数数组edges,其中edges[i] = [ai, b i, wi] 表示节点 ai 和 bi 之间有一条边,权重为 wi. 某些边的权重为…

    2025年12月9日
    000
  • 计数子岛

    1905 年。计算子岛屿 难度:中等 主题:数组、深度优先搜索、广度优先搜索、并集查找、矩阵 给定两个 m x n 二进制矩阵 grid1 和 grid2,其中仅包含 0(代表水)和 1(代表土地)。 岛屿是一组由1连接的4向(水平或垂直)。网格之外的任何细胞都被视为水细胞。 如果 grid1 中的…

    2025年12月9日
    000
  • 为什么一些开发人员更喜欢手动配置 PHP 环境而不是使用部署工具

    在现代软件开发中,php 是一种广泛使用的编程语言。然而,对于许多开发人员来说,搭建 php 环境并不是一件容易的事。手动配置php环境通常涉及多个复杂的步骤,包括安装php解释器、配置web服务器(例如apache或nginx)、设置数据库(例如mysql或postgresql)以及管理各种扩展模…

    2025年12月9日
    000
  • 同一行或同一列移除的大部分石头

    947。同一行或同一列移除的大部分石头 难度:中等 主题:哈希表、深度优先搜索、并集查找、图 在 2d 平面上,我们将 n 个石头放置在一些整数坐标点处。每个坐标点最多可以有一颗石头。 如果一块石头与另一块尚未移除的石头同一行或同一列,则可以将其移除。 给定一个长度为 n 的石头数组,其中stone…

    2025年12月9日
    000
  • 具有最大概率的路径

    1514。具有最大概率的路径 难度:中等 主题:数组、图、堆(优先队列)、最短路径 给定一个由 n 个节点(0 索引)组成的无向加权图,由边列表表示,其中edges[i] = [a, b] 是连接节点 a 和 b 的无向边,具有遍历成功的概率该边 succprob[i]. 给定两个节点的起点和终点,…

    2025年12月9日
    000
  • 掌握 PHP 和 MySQL:现代开发人员的详尽指南

    掌握 php 和 mysql:现代开发人员的详尽指南 ? php 和 mysql 构成了许多动态网站和 web 应用程序的支柱。该综合指南涵盖了先进概念、最佳实践和现代工具,可帮助开发人员充分利用这些技术的潜力。通过详细信息和实用技巧深入了解 php 和 mysql。 1. php 和 mysql …

    2025年12月9日
    000
  • PHP 函数如何创建可迭代和可遍历的对象?

    答案: 使用 php 函数创建可迭代和可遍历对象可简化数据遍历。详细描述:可迭代对象: 使用 range() 和 array() 函数创建可迭代对象,可按顺序访问元素。可遍历对象: 使用 arrayiterator() 和 cachingiterator() 函数创建可遍历对象,可使用 foreac…

    2025年12月9日
    000
  • 掌握代码重构:使用 Rector PHP 的完整指南

    照片由 matteo del piano 在 unsplash 上拍摄 php 校长简介 在不断发展的 php 开发世界中,保持代码库干净、最新且高效至关重要。这就是 rector php 发挥作用的地方。如果您一直想知道如何使用 rector php、如何安装它或者 rector php 到底是什…

    2025年12月9日
    000
  • 二叉树后序遍历

    145。二叉树后序遍历 难度:简单 主题: 堆栈、树、深度优先搜索、二叉树 给定二叉树的根,返回其节点值的后序遍历. 示例1: 输入: root = [1,null,2,3]输出: [3,2,1] 示例2: 输入: root = []输出: [] 示例3: 输入: root = [1]输出: [1]…

    2025年12月9日
    000
  • Hours是一个环境变量,我要使用ENV冷静冷静,我先告诉你一些事情

    我们总是很匆忙,想要尽快开发,而我们经常会采用旧习惯并构建旧软件,我们可以改进的一个项目是这个叫做环境的小东西,让我们了解一下。有关此的更多信息。 首先,我想在这里展示 laravel 配置概念的重点,我不会担心其余的标准,例如资源或其他类似的东西。 1 – 让我们一起寻求知识! 不久前…

    2025年12月9日 好文分享
    000
  • N 叉树邮购遍历

    590。 n 叉树后序遍历 难度:简单 主题: 堆栈、树、深度优先搜索 给定n叉树的根,返回其节点值的后序遍历. nary-tree 输入序列化以其级别顺序遍历来表示。每组孩子都由空值分隔(参见示例) 示例1: 输入: root = [1,null,3,2,4,null,5,6]输出: [5,6,3…

    2025年12月9日
    000
  • PHP 属性:如何使用 PHP 属性并创建自定义属性类 – 快速提示

    php 属性是在 php 8.0 中引入的。该版本标志着该语言的一个重要里程碑,带来了一些新功能和改进,包括引入用于向代码声明添加元数据的属性。 我第一次必须处理属性是由于 inspector 的 php 库中的一个问题。检查 github。在深入研究解决方案之前,让我们先概述一下属性是什么以及如何…

    2025年12月9日
    000
  • 托管平台列表:综合指南

    在数字时代,可靠的托管平台对于任何在线展示都至关重要,无论是个人博客、电子商务网站还是公司网站。有无数的选项可供选择,选择合适的托管平台可能会令人畏惧。本指南将帮助您浏览当今一些最好的托管平台,比较它们的功能、价格和对不同需求的适用性。 1. 蓝色主机 概述:Bluehost 是最受欢迎的托管平台之…

    2025年12月9日
    000
  • 分数加法和减法

    592。分数加法和减法 难度:中等 主题:数学、字符串、模拟 给定一个表示分数加减表达式的字符串表达式,以字符串格式返回计算结果。 最终结果应该是一个不可约分数。如果您的最终结果 是整数,请将其更改为分母为 1 的分数格式。所以在这种情况下,2应该转换为2/1。 示例1: 输入:表达式 = &#82…

    2025年12月9日
    000
  • “备份表”包

    轻松备份单个或多个数据库表。 通过添加 BackupTables::generateBackup(‘users’) 就可以了。 如果您想要`BackupTables::generateBackup([User::class, Post::class]),您还可以备份多个表 B…

    2025年12月9日
    000
  • 找到最近的回文

    564。找到最近的回文 难度: 难 主题:数学、字符串 给定一个表示整数的字符串 n,返回_最接近的整数(不包括其自身),这是一个回文-。如果有平局,则返回较小的。 最接近的定义为两个整数之间的绝对差最小化。 示例1: 输入: n = “123”输出:“121” 示例2: 输…

    2025年12月9日
    000
  • PHP 属性挂钩

    介绍 php 8.4 将于 2024 年 11 月发布,并将带来一个很酷的新功能:属性挂钩。 在本文中,我们将了解什么是属性挂钩以及如何在 php 8.4 项目中使用它们。 顺便说一句,您可能还有兴趣查看我的另一篇文章,其中向您展示了 php 8.4 中添加的新数组函数。 什么是 php 属性挂钩?…

    2025年12月9日
    000

发表回复

登录后才能评论
关注微信