因此,如果输入类似于s="a2b1d4f3h2",那么输出将是"acbcdhfihj"因为

  • shift('a',2)='c'

  • shift('b',1)='c'

  • shift('d',4)='h'

  • shift('f',3)='i'

  • shift('h',2)='j'

  • 为了解决这个问题,我们将按照以下步骤操作-

  • res:=空字符串

  • 对于范围0到s大小的i,请执行

  • res:=res连接s[i]

  • res:=res连接字符来自(ASCIIs[i]+s[i-1]的ASCII)

  • 如果s[i]是一个数字,那么

  • 否则,

  • 返回资源

  • 让我们看看以下实现以获得更好的理解-

    示例

    def solve(s):
       res=""
       for i in range(len(s)):
          if s[i].isdigit():
             res+= chr(int(s[i])+ord(s[i-1]))
          else:
             res+=s[i]
       return res
    s = "a2b1d4f3h2"
    print(solve(s))

    输入

    "a2b1d4f3h2"
    输出结果
    acbcdhfihj

    热门推荐