题解 | #求int型正整数在内存中存储时1的个数#

求int型正整数在内存中存储时1的个数

http://www.nowcoder.com/practice/440f16e490a0404786865e99c6ad91c9

import java.util.Scanner;
import java.util.Stack;

/**
 * @author lymili
 * @Date 2022/4/2 16:14
 * @Version 1.0
 */
public class Main {
    public static void main(String[] args) {
        Stack<Integer> stack = new Stack<>();
        int number = 0;
        Scanner scanner = new Scanner(System.in);
        number = scanner.nextInt();
        int minPrime = 2;
        while ((number / minPrime) != 0) {
            stack.add(number % minPrime);
            number = number / minPrime;
        }
        stack.add(number);
//        for (int data : stack){
//            System.out.println(data);
//        }
        int count = 0;
        for (int data : stack) if (data == 1) count++;
        System.out.println(count);
    }
}

// 输入一个 int 型的正整数,计算出该 int 型数据在内存中存储时 1 的个数。
全部评论

相关推荐

Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 13:46
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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