9.17网易互娱第一题0ac,请大神指点为何?

自测情况都通过,但是提交后0ac,不知为何。

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Solution solution = new Solution();
        int n = sc.nextInt();
        for (int i = 0; i < n; i++) {
            solution.getNum(sc.next());
        }
    }
}
class Solution{
    public void getNum(String s){
        StringBuilder sb = toBinaryString(s);
        StringBuilder ans = new StringBuilder();
        char ch = ' ';
        for (int j = 0; j < sb.length(); j++) {
            if (sb.charAt(j) == ch) {
                continue;
            }
            ch = sb.charAt(j);
            ans.append(ch);
        }
        System.out.println(ans.toString());
    }

    public StringBuilder toBinaryString(String s) {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            sb.append(toBinary(s.charAt(i) - '0'));
        }
        sb.reverse();
        int idx = 0;
        while (sb.charAt(idx) == '0') {
            idx++;
        }
        sb.delete(0, idx);
        return sb;
    }

    public StringBuilder toBinary(int x) {
        StringBuilder sb = new StringBuilder();
        while (x > 0) {
            sb.append(x % 2);
            x /= 2;
        }
        return sb.reverse();
    }
}

#Java求助##网易互娱##笔经#
全部评论
toBinary(int x)里面x为0你怎么办?
点赞 回复 分享
发布于 2021-09-17 22:33

相关推荐

手撕没做出来是不是一定挂
Chrispp3:不会,写出来也不一定过
点赞 评论 收藏
分享
像好涩一样好学:这公司我也拿过 基本明确周六加班 工资还凑活 另外下次镜头往上点儿
点赞 评论 收藏
分享
10-05 11:11
海南大学 Java
投票
理想江南137:感觉挺真诚的 感觉可以试一试
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务