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

题目:

题解:

java 复制代码
class Solution {
    public int integerReplacement(int n) {
        int ans = 0;
        while (n != 1) {
            if (n % 2 == 0) {
                ++ans;
                n /= 2;
            } else if (n % 4 == 1) {
                ans += 2;
                n /= 2;
            } else {
                if (n == 3) {
                    ans += 2;
                    n = 1;
                } else {
                    ans += 2;
                    n = n / 2 + 1;
                }
            }
        }
        return ans;
    }
}
相关推荐
深邃-16 分钟前
【Web安全】-Kali,Linux配置(2):Java环境配置,Python环境配置,Conda使用,PIP配置使用,SSH远程登录
java·linux·python·安全·web安全·网络安全·php
jjjava2.016 分钟前
Java多线程编程:从入门到实战
java·开发语言
Seven9717 分钟前
Tomcat 线程池的设计与实现:StandardThreadExecutor
java
爱笑的Sunday18 分钟前
Linux Java前后端项目 企业级0-1完整部署手册
java·linux·运维·服务器
始三角龙18 分钟前
LeetCode hoot 100 -- 最小覆盖子串
算法·leetcode·职场和发展
小年糕是糕手18 分钟前
【C/C++刷题集】顺序表、vector、链表、list核心精讲
c语言·开发语言·数据结构·c++·算法·leetcode·蓝桥杯
xyx-3v18 分钟前
FreeRTOS队列通信
java·服务器·网络
存在的五月雨21 分钟前
uniapp 一些组件的使用
java·前端·uni-app
水木流年追梦21 分钟前
CodeTop Top 300 热门题目10-验证IP地址
python·网络协议·tcp/ip·算法·leetcode
样例过了就是过了22 分钟前
LeetCode热题100 乘积最大子数组
c++·算法·leetcode·动态规划