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

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

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

用纯粹的数学方法计算,每次除2,有余数就加一,一直到剩下2或者1
import java.util.Scanner;

public class Main{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
int x = in.nextInt(); //读取数字
//int x=5;
int cnt = 0; //计数变量
while (x>2){
if (x%2==1)cnt++;
x=x/2;
}
if(x==2||x==1)cnt++;
System.out.println(cnt);
}
}

全部评论

相关推荐

10-17 10:05
已编辑
北华大学 全栈开发
牛客872465272号:掉头发了哥
点赞 评论 收藏
分享
球球别再泡了:坏,我单9要了14
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务