题目链接
题意:给定一小写字母字符串,第i次操作可把任一位字符切换i次,切换操作即把字符用字母表中下一个字符替换之,假设字母表成环,即 z z z的下一位是 a a a,当然也可以选择不切换,每一位至多只能进行一次操作。问能否在k次操作之内将字符串 s s s变为 t t t。
思路:将每一位的切换最小值(即最早在第几次操作进行切换) i n d ind ind 处理出来,显然 1 ≤ i n d ≤ 25 1\le ind \le 25 1≤ind≤25,再对于每个 i n d ind ind,计算他们最晚是第几次操作可以完成,判断最晚操作 i n d i + ( n u m [ i n d i ] − 1 ) ∗ 26 ind_i+(num[ind_i]-1)*26 indi​+(num[indi​]−1)∗26与 k k k的关系,超过 k k k就不能完成。
AC代码:

class Solution {public:bool canConvertString(string s, string t, int k) {int ls=s.size(),lt=t.size();if(ls!=lt) return false;vector<int> a(ls);map<int,int> ma;for(int i=0;i<ls;i++){if(s[i]!=t[i]){int ind=(t[i]-s[i]+26)%26;ma[ind]++;}}for(int i=1;i<26;i++){if(i+(ma[i]-1)*26>k) return false;}return true;}
};

写在最后:本题一开始的想法是对每一位字符都判断在第几次进行操作,弄一个while一直往后推,这样复杂度显然不对。该用简单公式换一下就换,不能总是在错误做法里浪费时间。

Leetcode5469. K 次操作转变字符串【第 32 场双周赛】相关推荐

  1. LeetCode 第 32 场双周赛(983/2957,前33.2%)

    文章目录 1. 比赛结果 2. 题目 1. LeetCode 5468. 第 k 个缺失的正整数 easy 2. LeetCode 5469. K 次操作转变字符串 medium 3. LeetCod ...

  2. Java实现LeetCode第32场双周赛(题号5468,5469,5470,5485)

    有什么不对的地方欢迎大佬评论区评论 5468. 第 k 个缺失的正整数(遍历) 5469. K 次操作转变字符串(遍历记录) 5470. 平衡括号字符串的最少插入次数(压栈) 5485. 找出最长的超 ...

  3. Leetcode5485. 找出最长的超赞子字符串【第 32 场双周赛】

    题目链接 题意:给你一个字符串 SSS.请返回 SSS 中最长的 超赞子字符串 的长度. 「超赞子字符串」需满足满足下述两个条件: 该字符串是 SSS 的一个非空子字符串 进行任意次数的字符交换重新排 ...

  4. Leetcode5470. 平衡括号字符串的最少插入次数【第 32 场双周赛】

    题意:每个左括号匹配两个连续的右括号,问插入多少字符可使字符串平衡 思路:记录左括号的数量,每次遇见右括号判断是否为连续右括号,如果是,直接消去一个左括号 ( l e f t − − ) (left- ...

  5. 将输入字符串t中从第m个字符开始的全部字符复制到字符串s中_leetcode第32双周赛第二题leetcode1540. K 次操作转变字符串...

    leetcode1540. K 次操作转变字符串 给你两个字符串 s 和 t ,你的目标是在 k 次操作以内把字符串 s 转变成 t . 在第 i 次操作时(1 <= i <= k),你可 ...

  6. LeetCode 第 18 场双周赛(188/587,前32%)

    文章目录 1. 比赛结果 2. 题目 LeetCode 1331. 数组序号转换 easy LeetCode 1328. 破坏回文串 medium LeetCode 1329. 将矩阵按对角线排序 m ...

  7. C练题笔记之:Leetcode-第 85 场双周赛---6156. 得到 K 个黑块的最少涂色次数

    题目: 给你一个长度为 n 下标从 0 开始的字符串 blocks ,blocks[i] 要么是 'W' 要么是 'B' ,表示第 i 块的颜色.字符 'W' 和 'B' 分别表示白色和黑色. 给你一 ...

  8. leetcode10场双周赛-验证回文字符串 III (动态规划)

    给出一个字符串 s 和一个整数 k,请你帮忙判断这个字符串是不是一个「K 回文」. 所谓「K 回文」:如果可以通过从字符串中删去最多 k 个字符将其转换为回文,那么这个字符串就是一个「K 回文」. 示 ...

  9. LeetCode第 3 场双周赛(2019.6.29)第一题:小于 K 的两数之和

    5021. 小于 K 的两数之和 给你一个整数数组 A 和一个整数 K,请在该数组中找出两个元素,使它们的和小于 K 但尽可能地接近 K,返回这两个元素的和. 如不存在这样的两个元素,请返回 -1. ...

最新文章

  1. 这就是芬兰:先让全国1%的人学起AI!
  2. Spring2.5+MINA2搭建Socket Server
  3. nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决
  4. [转载] 计算机网络——OSI模型究竟忽悠了多少人
  5. linux终端登录软件,小白入门之四:使用终端登录软件,登录linux系统
  6. Shiro之权限管理的概念
  7. 学数据库你竟然不用用JAVA写代码,可惜你遇到了我! JAVA连接数据库(JDBC)的安装使用教程
  8. svn 自动同步到web站点目录post-commit.bat
  9. asp.net 跨页面传值(一)
  10. 服务器是计算机的一种 是指,pc服务器是指什么意思
  11. .netcore持续集成测试篇之MVC层单元测试
  12. Hadoop生态圈-Ambari控制台功能简介
  13. VBA打开TXT类文件读写相关操作代码
  14. linux 常见命令 cp,Linux 常用命令之cp,一个可以煮饭的工具;
  15. sourceTree初识
  16. 浙江理工考研c语言程序设计,浙江理工大学C程序设计期末试卷A卷
  17. 图片和Base64编码相互转换
  18. linux 节点互信,Linux 集群节点互信ssh配置
  19. jQuery 案例-图片抽奖
  20. Linux下的32位C程序,linux系统c语言生成.so文件,生成64位可执行文件,在64位系统中运行32位的可执行文件...

热门文章

  1. java计算机毕业设计面相高校学生的图书共享平台源代码+数据库+系统+lw文档
  2. 股票的操作策略不是靠运气,个人对于沪深股票的操作方法分享
  3. VIT与swin transformer
  4. 2013华东数据库技术大会亮点回顾:数据库扩展性,高效SQL,MariaDB
  5. 刘连响:小程序实时音视频在互动场景下的应用
  6. 记录一下某位大神关于HTV的详细内容
  7. Cocos 资料大全
  8. DxO PureRAW for Mac(RAW照片处理器)
  9. 谷歌浏览器 chrome 网页播放视频 全屏退出死机 解决方法
  10. word如何一键全选,word怎么全选所有内容(word文档的快捷键操作)