Golang | Leetcode Golang题解之第397题整数替换

题目:

题解:

Go 复制代码
func integerReplacement(n int) (ans int) {
    for n != 1 {
        switch {
        case n%2 == 0:
            ans++
            n /= 2
        case n%4 == 1:
            ans += 2
            n /= 2
        case n == 3:
            ans += 2
            n = 1
        default:
            ans += 2
            n = n/2 + 1
        }
    }
    return
}
相关推荐
XiaoyaoCarter2 小时前
每日一道leetcode(新学数据结构版)
数据结构·c++·算法·leetcode·职场和发展·哈希算法·前缀树
freyazzr3 小时前
Leetcode刷题 | Day63_图论08_拓扑排序
数据结构·c++·算法·leetcode·图论
背帆3 小时前
go的interface接口底层实现
开发语言·后端·golang
Swift社区5 小时前
LeetCode 高频题实战:如何优雅地序列化和反序列化字符串数组?
算法·leetcode·职场和发展
黑色的山岗在沉睡7 小时前
LeetCode100.4 移动零
数据结构·算法·leetcode
_Itachi__7 小时前
LeetCode 热题 100 114. 二叉树展开为链表
linux·leetcode·链表
全栈凯哥8 小时前
Java详解LeetCode 热题 100(17):LeetCode 41. 缺失的第一个正数(First Missing Positive)详解
java·算法·leetcode
阑梦清川9 小时前
关于Go语言的开发环境的搭建
开发语言·后端·golang
言之。9 小时前
Makefile 在 Go 项目中的实践
开发语言·elasticsearch·golang
MoonBit月兔10 小时前
插件双更新:LeetCode 刷题支持正式上线,JetBrains IDE 插件持续升级!
ide·算法·leetcode