每日一题 --- 替换数字[卡码][Go]

替换数字

题目:54. 替换数字(第八期模拟笔试) (kamacoder.com)

题目描述

给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。 例如,对于输入字符串 “a1b2c3”,函数应该将其转换为 “anumberbnumbercnumber”。

输入描述

输入一个字符串 s,s 仅包含小写字母和数字字符。

输出描述

打印一个新的字符串,其中每个数字字符都被替换为了number

输入示例
a1b2c3
输出示例
anumberbnumbercnumber
提示信息

数据范围:
1 <= s.length < 10000。

方法一:

先确定有几个数字,扩容,然后使用双指针挨个赋值。

package main

import "fmt"

func main() {
    var n string
    fmt.Scan(&n)
	fmt.Println(replace123(n))
}

func replace123(s string) string {
	count := 0
	for _, r := range s {
		if r >= 48 && r <= 57 {
			count++
		}
	}
	bytes := []byte(s)
	newBytes := make([]byte, len(bytes)+5*count)
	l, r := len(bytes)-1, len(newBytes)-1
	for r >= 0 && l >= 0 {
		if bytes[l] >= 48 && bytes[l] <= 57 {
			for _, i2 := range "rebmun" {
				newBytes[r] = byte(i2)
				r--
			}
		} else {
			newBytes[r] = bytes[l]
			r--
		}
		l--
	}
	return string(newBytes)
}

相关推荐

  1. 每日 --- 替换数字[][Go]

    2024-03-31 19:14:02       18 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-31 19:14:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-31 19:14:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-31 19:14:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-31 19:14:02       20 阅读

热门阅读

  1. js 扩展运算符(...)的用法

    2024-03-31 19:14:02       20 阅读
  2. 力扣爆刷第108天之CodeTop100五连刷26-30

    2024-03-31 19:14:02       16 阅读
  3. mysql用户与权限

    2024-03-31 19:14:02       15 阅读
  4. 汇总17个工作必备的Python自动化代码

    2024-03-31 19:14:02       16 阅读
  5. vue路由重定向

    2024-03-31 19:14:02       14 阅读
  6. CSS 滚动条样式修改

    2024-03-31 19:14:02       18 阅读
  7. 30. 串联所有单词的子串 —— LeetCode (python)

    2024-03-31 19:14:02       16 阅读
  8. 如何解决redis里的大key问题

    2024-03-31 19:14:02       20 阅读
  9. python项目练习——9.在线聊天应用程序

    2024-03-31 19:14:02       15 阅读
  10. 利用ChatGPT提升学术论文写作技巧

    2024-03-31 19:14:02       18 阅读
  11. websocket

    websocket

    2024-03-31 19:14:02      16 阅读
  12. Opencv 读取灰度图像会识别为3通道问题

    2024-03-31 19:14:02       16 阅读