网易后端今晚笔试的有吗?

第一题试了几个用例,都没问题,只能过12.5,无法理解呢。。。而且这个输入输出必须带上“”有点奇葩
import java.util.*;

public class Main{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()){
            String s = scanner.nextLine();
            String[] str = s.split(",");
            String s1 = str[0].substring(1,str[0].length()-1);
            String s2 = str[1].substring(1,str[1].length()-1);
            Double yuan = Double.parseDouble(s1)+Double.parseDouble(s2);
            String ss = yuan+"";
            StringBuilder res = new StringBuilder();
            res.append('"');
                if(yuan.intValue()-yuan==0) ss= yuan.intValue()+"";
                int n = ss.length();
                int ca = 0;
                for (int i = n-1; i >= 0; i--) {
                    char c = ss.charAt(i);
                    if(c=='.'){
                        res.append(".");
                        continue;
                    }
                    int tmp = ca+c-'0';
                    if(c=='0'){
                        tmp = ca+1;
                    }
                    res.append(tmp%9);
                    ca = tmp/9;
                }
                if(ca!=0) res.append(ca);
                res.append('"');
                System.out.println(res.reverse().toString());
        }
    }
}
第二题也迷之卡60
import java.util.*;

public class Main{
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNext()){
            int n = scanner.nextInt();
            if(n<=0){
                System.out.println(0);
                continue;
            }
            int[] man = new int[n];
            int[] project = new int[n];
            for (int i = 0; i < n; i++) {
                man[i] = scanner.nextInt();
            }
            for (int i = 0; i < n; i++) {
                project[i] = scanner.nextInt();
            }
            int  k = scanner.nextInt();
            Arrays.sort(man);
            Arrays.sort(project);
            int count = 0;
            int res  = 1;
            for (int i = n-1; i >= 0; i--) {
                if(man[i]>project[i]) count++;
                else if (man[i]<project[i]) count--;
            }
            if(count<0){
                System.out.println(0);
                continue;
            }else{
                for (int i = 1; i <= count; i++) {
                    res *= i;
                }
                System.out.println(res%k);
            }
        }
    }
}


#网易互娱2020春招笔试##笔试题目##网易#
全部评论
楼主啥岗位啊,好像不同岗位不一样
点赞 回复 分享
发布于 2020-04-11 21:19
第二题每乘一次就去一次余
点赞 回复 分享
发布于 2020-04-11 21:21
一样,第一题测试用例都过了,卡12%。第二题我用dfs,卡20%
点赞 回复 分享
发布于 2020-04-11 21:23
后端不是没有笔试吗
点赞 回复 分享
发布于 2020-04-11 21:27
第一题模拟,没有优化过代码,太长贴不出来。思路就是取小数和整数分别计算。
点赞 回复 分享
发布于 2020-04-11 21:30
第一题AC,第二题80
点赞 回复 分享
发布于 2020-04-11 21:31
1.100% 2.80% 4.80% 第三题没写
点赞 回复 分享
发布于 2020-04-11 21:33
请问你的第一题是外星人9进制吗。。。
点赞 回复 分享
发布于 2020-04-11 21:35
求下第二题思路,另外第一题我a了。思路要考虑到两个都有小数,一个有小数,都没有小数。还要考虑补0。
点赞 回复 分享
发布于 2020-04-11 21:40
有没有大佬第4题AC的,80不知道还有什么特殊用例
点赞 回复 分享
发布于 2020-04-11 21:41

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务