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

Golang 替换数字卡码54题

文章目录

  • 替换数字 54卡码网
    • 直接操作读取的[]byte

替换数字 54卡码网

本题为卡码网的54题,起为acm模式的答题
这里我们不在输入获得的[]byte类型上直接修改,而是保存在新建的[]byte上

golang小知识:
单引号’',表示byte类型或rune类型,对应int8和int32类型,默认是rune类型

package mainimport "fmt"// acm模式
func main() {//以byte切片的方式获取输入var str []byte//获取输入_, err := fmt.Scanln(&str)if err != nil {return}//将要插入的number先存为[]byte,方便使用number := []byte{'n', 'u', 'm', 'b', 'e', 'r'}var record []bytefor _, i2 := range str {//这里比较需要使用'',实际对应的数值是不一样的if i2 >= '0' && i2 <= '9' {record = append(record, number...)} else {record = append(record, i2)}}//将[]byte转换为string,方便后续输出s := string(record)fmt.Println(s)
}

直接操作读取的[]byte

go中string时无法直接修改的,但我们这里采取[]byte进行读取的话则可以针对进行修改

// 使用原[]byte
func main() {//以byte切片的方式获取输入var str []byte//获取输入_, err := fmt.Scanln(&str)if err != nil {return}//将要插入的number先存为[]byte,方便使用number := []byte{'n', 'u', 'm', 'b', 'e', 'r'}for i := 0; i < len(str); i++ {//这里比较需要使用'',实际对应的数值是不一样的if str[i] >= '0' && str[i] <= '9' {str = append(str[:i], append(number, str[i+1:]...)...)i += 6 - 1}}//将[]byte转换为string,方便后续输出c := string(str)fmt.Println(c)
}

但在实际使用的过程中,第二部分所需的运行存储反而更多

相关文章:

  • 【总结】浅谈深度学习算法与硬件协同优化
  • Git提交规范
  • ❤ HbuildX使用以及快捷键
  • 【深度学习:Synthetic Training Data 】合成训练数据简介
  • 做数据缓存,Map 比List更具有优势
  • 直播预告丨看零售场,如何玩转 MaaS
  • UDP传输总丢包?常用的解决方式在这里!
  • 在Linux系统中创建虚拟串口
  • Go+快速开始详细指南
  • 十三、Three场景物体增加发光特效
  • EVE-NG的环境导入IOL组件
  • 算法竞赛备赛进阶之数位DP训练
  • 跨境电商多账号防关联攻略分享,盘点那些可以多账号登录的指纹浏览器
  • React18-树形菜单-递归
  • electron+vue项目使用serialport报错Cannot read property ‘indexOf‘ of undefined解决办法
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Android组件 - 收藏集 - 掘金
  • Angular2开发踩坑系列-生产环境编译
  • ECMAScript入门(七)--Module语法
  • GitUp, 你不可错过的秀外慧中的git工具
  • jquery ajax学习笔记
  • PAT A1050
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • Vue2 SSR 的优化之旅
  • webpack入门学习手记(二)
  • web标准化(下)
  • WePY 在小程序性能调优上做出的探究
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 爱情 北京女病人
  • 工作手记之html2canvas使用概述
  • 前端性能优化--懒加载和预加载
  • 前言-如何学习区块链
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ###C语言程序设计-----C语言学习(6)#
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (C语言)二分查找 超详细
  • (day6) 319. 灯泡开关
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (七)Knockout 创建自定义绑定
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (小白学Java)Java简介和基本配置
  • . NET自动找可写目录
  • .halo勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .mat 文件的加载与创建 矩阵变图像? ∈ Matlab 使用笔记
  • .NET : 在VS2008中计算代码度量值
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .Net6使用WebSocket与前端进行通信
  • .NET使用HttpClient以multipart/form-data形式post上传文件及其相关参数
  • .net中的Queue和Stack
  • @cacheable 是否缓存成功_让我们来学习学习SpringCache分布式缓存,为什么用?
  • @RequestMapping处理请求异常
  • [ 转载 ] SharePoint 资料
  • [BUUCTF NewStarCTF 2023 公开赛道] week3 crypto/pwn