BC160 小q的数列

小q的数列

https://www.nowcoder.com/practice/76796815518f4db5b800775581cda1e4?tpId=290&tags=&title=&difficulty=0&judgeStatus=0&rp=0&sourceUrl=%2Fexam%2Foj%2Fta%3FtpId%3D290

import java.util.Scanner;
// 逻辑应该是对的 只是未在规定时间内输出
// 可是我不加N'的逻辑,只是接收加一个输出就已经超时了
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
        for (int i = 0; i < t; i++) {
            long n = sc.nextLong();
            int value = 0;
            // fn = n的二进制数中的1的个数
            String ss = Long.toBinaryString(n);
            for (int j = 0; j < ss.length(); j++) {
                if (ss.charAt(j) == '1') {
                    value ++;
                }
            }
            long n1 = (long)(Math.pow(2, value) - 1);
            System.out.println(value + " " + n1);
//              System.out.println(n + " ");
        }
    }
}

全部评论
我用递归也说我超时,超时1ms,挺无语
点赞 回复 分享
发布于 2022-12-18 21:18 湖北

相关推荐

点赞 评论 收藏
分享
06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务