(LeetCode 每日一题) 1780. 判断一个数字是否可以表示成三的幂的和 (数学、三进制数)

题目:1780. 判断一个数字是否可以表示成三的幂的和

思路:数学+三进制数,时间复杂度0(logn)。
因为不能有相同的幂,那么三进制形式,不能出现2

C++版本:

cpp 复制代码
class Solution {
public:
    bool checkPowersOfThree(int n) {
        while(n>0){
            if(n%3==2) return false;
            n/=3;
        }
        return true;
    }
};

JAVA版本:

java 复制代码
class Solution {
    public boolean checkPowersOfThree(int n) {
        while(n>0){
            if(n%3==2) return false;
            n/=3;
        }
        return true;
    }
}

GO版本:

go 复制代码
func checkPowersOfThree(n int) bool {
    for n>0 {
        if n%3==2 {return false}
        n/=3
    }
    return true
}
相关推荐
杨杨杨大侠1 小时前
都能接模型、RAG 和 MCP,Java Agent 框架到底差在哪?
java
Thinker QAQ2 小时前
并发编程(九):BlockingQueue 与 Channel——语言层的原子性、可见性与有序性
java·python·go·并发编程·channel·blockingqueue·message passing
hanlin032 小时前
刷题笔记:力扣第32题-最长有效括号
笔记·算法·leetcode
一拳一个呆瓜2 小时前
【STL】文件系统导航
c++·stl
All for pursuit.2 小时前
【动态规划-21】312.戳气球
数据结构·c++·算法·leetcode·动态规划
栈帧之外3 小时前
【C++】STL之set
开发语言·c++
霸道流氓气质3 小时前
RAG 可观测性与生产监控实战:四层遥测模型、五大仪表盘与 OpenTelemetry 全链路追踪的 Java 生产级实现
java·人工智能·python
AOI小白新手上路3 小时前
autodl常用的tar 打包下载(数据集)命令手册:逐段拆解与套用模板
java·大数据·数据库
zhanghaha13144 小时前
C++构造函数的一些其他应用(逐词逐句保姆讲解)
c++
jimy15 小时前
c++的 Type Traits (二、更详细版本)
开发语言·c++