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

Golang | Leetcode Golang题解之第306题累加数

题目:

题解:

func stringAdd(x, y string) string {res := []byte{}carry, cur := 0, 0for x != "" || y != "" || carry != 0 {cur = carryif x != "" {cur += int(x[len(x)-1] - '0')x = x[:len(x)-1]}if y != "" {cur += int(y[len(y)-1] - '0')y = y[:len(y)-1]}carry = cur / 10cur %= 10res = append(res, byte(cur)+'0')}for i, n := 0, len(res); i < n/2; i++ {res[i], res[n-1-i] = res[n-1-i], res[i]}return string(res)
}func valid(num string, secondStart, secondEnd int) bool {n := len(num)firstStart, firstEnd := 0, secondStart-1for secondEnd <= n-1 {third := stringAdd(num[firstStart:firstEnd+1], num[secondStart:secondEnd+1])thirdStart := secondEnd + 1thirdEnd := secondEnd + len(third)if thirdEnd >= n || num[thirdStart:thirdEnd+1] != third {break}if thirdEnd == n-1 {return true}firstStart, firstEnd = secondStart, secondEndsecondStart, secondEnd = thirdStart, thirdEnd}return false
}func isAdditiveNumber(num string) bool {n := len(num)for secondStart := 1; secondStart < n-1; secondStart++ {if num[0] == '0' && secondStart != 1 {break}for secondEnd := secondStart; secondEnd < n-1; secondEnd++ {if num[secondStart] == '0' && secondStart != secondEnd {break}if valid(num, secondStart, secondEnd) {return true}}}return false
}
http://www.lryc.cn/news/412099.html

相关文章:

  • 快速排序(上)
  • 数据结构-队列
  • MySQL:操作符
  • 反序列化靶机实战serial(保姆级教程)
  • 【Git】git 从入门到实战系列(一)—— Git 的诞生,Linus 如何在 14 天内编写出 Git?
  • com.microsoft.sqlserve r:sqljdbc4:jar:4.0 was not found in......如何解决?
  • 数据集——鸢尾花介绍和使用
  • ElasticSearch第4篇(亿级中文数据量 ElasticSearch与Sphinx建索引速度、查询速度、并发性能、实测对比)
  • 过期知识:thinkphp5 使用migrate给现有的数据表新增表字段
  • 前端和Postman调用同一个接口,拿到的数据不一样
  • 1000W长连接,如何建立和维护?千万用户IM 架构设计
  • vulhub:Apache解析漏洞CVE-2017-15715
  • 开发中可能会面临的真实问题及处理流程
  • 个性化你的生产力工具:待办事项App定制指南
  • 本地部署持续集成工具Jenkins并配置公网地址实现远程自动化构建
  • 【数据结构】了解哈希表,解决哈希冲突,用Java模拟实现哈希桶
  • qt5 ui转python或C++文件
  • scp命令详解
  • 算法小白的进阶之路(力扣1~5)
  • 昇思25天学习打卡营第22天|MindSporeK基于Diffusion扩散模型学习- Diffusion与其他生成模型
  • 【C++版本】protobuf与gRPC
  • 要抓住国际白银现货行情 以下这几点需要注意
  • 【计算机毕业设计】​720图书馆智能选座系统
  • java面向对象重点总结
  • 1321:【例6.3】删数问题(Noip1994)
  • 使用 Python 中的 ELSER 进行Serverless 语义搜索:探索夏季奥运会历史
  • [HITCON 2017]SSRFme 1
  • 看不见的硝烟:中国网络安全三十年沉浮史
  • 3.7.物体检测算法
  • Spring源码解析(27)之AOP的核心对象创建过程2