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

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

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

本题开始继续使用io流进行数据的输入,速度提高内存也优化了,很不错。

import java.io.*;
public class Main{
    public static void main(String []args) throws IOException{
        count1();
    }
    public static void count1() throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int num = Integer.parseInt(br.readLine());
        if(num == 0 || num == 1){
            System.out.print(num);
        }
        else{
            int count = 0;
            for(int i = 0; num >= 2; num /= 2){
                if(num % 2 ==1){
                    count++;
                }
            }
            System.out.print(count + 1);
        }
    }
}
全部评论

相关推荐

牛客765689665号:没有实习是硬伤,央国企看学历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务