百度研发A卷9.7 第二题完美数,第三题求解

public class Bd02 {
    public static void main(String[] args) {

        Scanner in = new Scanner(System.in);
        int t = in.nextInt();
        for (int i = 0; i < t; i++) {
            long x = in.nextLong();
            long tmp = x, d = 1, low = 0;
            while (tmp > 0) {
                low = low + (tmp % 10) * d;
                if (tmp % 10 == 0) {
                    tmp--;
                    continue;
                }
                d *= 10;
                tmp /= 10;
            }
            System.out.println(low);
            System.out.println(getInt(low));
        }

        in.close();
    }

    public static String getInt(long x) {
        String s = String.valueOf(x);
        int n = s.length();
        StringBuilder sb = new StringBuilder();
        boolean pre = false;
        for (int i = 0; i < n; i++) {
            char c = s.charAt(i);
            if (c > '3' || pre) {
                sb.append(3);
                pre = true;
            } else {
                sb.append(c);
            }
        }
        return sb.toString();
    }
}
第二题A了,还算顺利吧,第三题感觉就是组合问题,不同组合对应着不同数量(2^n-1)。。。只有15%#百度##笔试题目#
全部评论

相关推荐

好的h:其实像点评那里的mq可以去掉我觉得,一个单体架构为什么要上mq呢,这就是明显的炫技,而且是很低级的炫技。mq为的在消费端解耦,消费端和服务端都部署在本机上怎么去解耦,那我为什么不多开几条线程去解决问题呢?真的兄弟,面试的时候突然问你这个你能扛住吗。
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务