当前位置: 首页 > news >正文

优选算法系列(6.模拟)

一.替换所有的问号(easy)

题目链接:1576. 替换所有的问号 - 力扣(LeetCode)


解法:

 

纯模拟。从前往后遍历整个字符串,找到问号之后,就用  a ~ z 的每⼀个字符去尝试替换即可。


代码:

C++:

java:

二:提莫攻击(easy)

题目链接:495. 提莫攻击 - 力扣(LeetCode)


解法:

模拟 + 分情况讨论。
计算相邻两个时间点的差值:
  1. 如果差值大于等于中毒时间,说明上次中毒可以持续 duration 秒;
  2. 如果差值小于中毒时间,那么上次的中毒只能持续两者的差值。


代码:

C++:

java:

三.N 字形变换(medium)

题目链接:6. Z 字形变换 - 力扣(LeetCode)


解法:

 

找规律,用row 代替行数,row = 4 时画出的 N 字形如下:
0 2row - 2 4row - 4
1 2row - 3 2row - 1 4row - 5 4row - 3
2 2row-4 2row 4row - 6 4row - 2
3 2row + 1 4row - 1
不难发现,数据是以 2row - 2 为⼀个周期进行规律变换的。将所有数替换成用周期来表示的变量:
第一行的数是:0, 2row - 2, 4row - 4;
第二行的数是:1, (2row - 2) - 1, (2row - 2) + 1, (4row - 4) - 1, (4row - 4) + 1;
第三行的数是:2, (2row - 2) - 2, (2row - 2) + 2, (4row - 4) - 2, (4row - 4) + 2;
第四行的数是:3, (2row - 2) + 3, (4row - 4) + 3。
可以观察到,第一行、第四行为差为 2row - 2 的等差数列;第⼆⾏、第三⾏除了第⼀个数取值为行数,每组下标为(2n - 1, 2n)的数围绕(2row - 2)的倍数左右取值。
以此规律,我们可以写出迭代算法。

代码:

C++:

java:

四.外观数列 (medium)\

题目链接:38. 外观数列 - 力扣(LeetCode)

解法:

所谓「外观数列」,其实只是依次统计字符串中连续且相同的字符的个数。依照题意,依次模拟即 可


代码:

C++:

java:

六:数青蛙(medium)

题目链接:1419. 数青蛙 - 力扣(LeetCode)


解法:

模拟青蛙的叫声。
  • 当遇到 'r' 'o' 'a' 'k' 这四个字符的时候,我们要去看看每⼀个字符对应的前驱字符,有没有青蛙叫出来。如果有⻘蛙叫出来,那就让这个青蛙接下来喊出来这个字符;如果没有,直接返回 -1
  • 当遇到 'c' 这个字符的时候,我们去看看 'k' 这个字符有没有⻘蛙叫出来。如果有,就让这个⻘蛙继续去喊 'c' 这个字符;如果没有的话,就重新搞⼀个⻘蛙。

代码:

C++:

java:

相关文章:

  • 专业抑郁测试工具:让心理健康评估更简单
  • AI工厂崛起:解析吴泳铭提出的GPU中心化计算范式
  • 给k8s中绑定pv并在容器中运行中使用的pvc扩容
  • Elasticsearch单节点安装手册
  • LeetCode.3396.使数组元素互不相同所需的最少操作次数
  • ArkTS语言基础之函数
  • 从Excel到智能中枢:工单管理的MES系统进化论
  • 40、web前端开发之Vue3保姆教程(四)
  • tcp/ip攻击及防范
  • 7、nRF52xx蓝牙学习(nrf_gpiote.c库函数学习)
  • Spring 服务调用接口时,提示You should be redirected automatically to target URL:
  • 7.第二阶段x64游戏实战-分析人物属性
  • 软件需求分析习题汇编
  • PostGreSQL/openGauss表膨胀处理
  • Postman测试
  • [创业之路-364]:穿透表象:企业投资的深层逻辑与误区规避
  • 程序化广告行业(69/89):电商素材制作与展示策略解析
  • 程序化广告行业(71/89):ABTester与Tag Manager系统深度解析
  • Android学习总结之数据结构篇
  • <tauri><rust><GUI>基于rust和tauri,将tauri程序打包为window系统可安装的安装包(exe、msi)
  • 中山网站建设华联在线/搜索引擎优化论文
  • 怎么做购物网站的分类目录/成都新一轮疫情
  • 模板网站库/2022千锋教育培训收费一览表
  • 怎么把网站设置为主页面/深圳网站设计公司排行
  • 易县有没有z做网站的/网站推广引流
  • 泊头网站制作/sem优化软件选哪家