BISHI61 小q的数列


思路

这道题本质上是要计算一个数字在二进制下"1"的个数,然后构造出另一个具有相同数量"1"但取值最小的数字。

求解代码

java 复制代码
public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));

        int T = Integer.parseInt(br.readLine().trim());

        while (T-- > 0) {
            String str = br.readLine();
            long n = Long.parseLong(str.trim());

            int c = Long.bitCount(n);
            long k = (1L << c) - 1;
            out.println(c + " " + k);
        }

        out.flush();
        out.close();
        br.close();
    }
相关推荐
逍遥德14 小时前
skill模板-基于java maven项目
java·人工智能·自然语言处理·maven
兩尛14 小时前
c++面试常问2
开发语言·c++·面试
XiYang-DING14 小时前
【Java EE】单例模式
java·单例模式·java-ee
Rust研习社14 小时前
添加依赖库时的 features 是什么?优雅实现编译期条件编译与模块化开发
开发语言·后端·rust
Tel1992530800415 小时前
ENDAT2.2 协议信号转 SSI /BISS-C转换卡 ENDAT2.2 协议信号转DMC多摩川高速协议转换器 互转卡
c语言·开发语言·网络
志飞15 小时前
springboot配置可持久化本地缓存ehcache
java·spring boot·缓存·ehcache·ehcache持久化
itzixiao15 小时前
L1-051 打折(5分)[java][python]
java·python·算法
Tiger_shl15 小时前
C# 托管对象、非托管对象 讲解
开发语言·c#
HappyAcmen15 小时前
10.常见报错排查与基础调试
开发语言·python