BISHI30 二进制数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));

        String str = br.readLine();
        long n =Long.parseLong(str.trim());

        int count = 0;
        while (n > 0) {
            count += n & 1;
            n = n >> 1;
        }
        out.println(count);

        out.flush();
        out.close();
        br.close();
    }

小贴士

StreamTokenizerin.nvaldouble 类型(64 位浮点数), 但 double 的有效整数精度只有 53 位,将其强转为 long(64 位整数)会造成精度丢失,所以这里需要用BufferedReader.readLine()读取字符串再转 long

相关推荐
极客猴子2 小时前
Android录音转写频繁卡顿?多款APP长时间会议场景稳定性实测
android·人工智能·智能手机·飞书
Kapaseker2 小时前
Boolean 变量到底该怎么命名?
android·kotlin
雾屿_Mistisle2 小时前
文件包含漏洞(File Inclusion)
android
小孔龙3 小时前
Android 图形系统全景
android·计算机图形学
2501_915921433 小时前
详细解析,iOS 应用上架 App Store 的完整流程与指南
android·ios·小程序·https·uni-app·iphone·webview
qq_425516183 小时前
录音转文字工具免费下载:免费额度与功能限制对比
android·人工智能·智能手机·powerpoint
plainGeekDev3 小时前
Robolectric → 分层测试:测试策略重构
android·java·kotlin
plainGeekDev3 小时前
Instrumentation → Compose Testing
android·java·kotlin
sz_denny4 小时前
android aab导出apk
android
码上有光4 小时前
make和makefile(自动化构建)
android·运维·自动化