小D的‘abc’变换问题 和 a替换函数 | 豆包MarsCode AI刷题

81 阅读2分钟

本篇会讲两个题目,这两个题目有一定的相似性,都是关于字符转换的问题。可以一起学习,一起解答。

这个问题是小D的'abc'变化问题

问题描述

小D拿到了一个仅由 "abc" 三种字母组成的字符串。她每次操作会对所有字符同时进行以下变换:

  • 'a' 变成 'bc'
  • 'b' 变成 'ca'
  • 'c' 变成 'ab'

小D将重复该操作 k 次。你的任务是输出经过 k 次变换后,得到的最终字符串。

例如:对于初始字符串 "abc",执行 2 次操作后,字符串将变为 "caababbcbcca"

思路解析

  • 遍历字符串的过程中遇到a,b,c就转换为对应的字符。输出遍历k次的结果。
  • 在转换的过程中,字符串的长度会不断变长。记录变换的字符,避免重复进行变换。
  • 具体步骤
    • 初始化当前的字符串
    • 按照规则进行变换
    • 重复k次

代码实现

屏幕截图 2024-11-27 095418.png

这个问题是a替换函数

问题描述

给定一个字符串ss,编写一个函数,将字符串中的小写字母a替换为"%100",并返回替换后的字符串。

例如,对于字符串"abcdwa",所有a字符会被替换为"%100",最终结果为%100bcdw%100"

思路解析

  • 字符存储在列表里面
  • 遍历所有字符
    • 遇到a就替换为%100,其余保持不变
  • 将列表内容转换为字符串返回

代码实现

屏幕截图 2024-11-27 100838.png

学习计划

  • 比如这两个题目,较为简单。遇到这类型的题目时,可以自己先进行思考,先写出自己的代码。然后利用该编辑器的ai功能进行检查,看自己哪个步骤需要优化,从而进行修改。如果遇到难的题目,思考之后,可以让ai给出思路和代码提示。
  • 例如这两个题目具有一定的相似性,可以放在一起进行练习,这样也会提高学习的效率。

ai刷题体会

ai可以帮助我们提供思路,以及代码,还能检查代码的错误与否。但经过我这段时间的刷题,ai给出答案可能不一定准确,还是需要我们自己动脑思考,去不断的调整修改,debug,最终才能写出一个好的代码。当然ai只是我们的工具,不能把全部问题都抛给ai解答,这样我们的能力也得不到提升。