网易互娱笔试

网易互娱笔试全AC#网易互娱#
全部评论
有人能发一下JAVA的代码,我总是自测能过,提交就通过案例0%
点赞 回复 分享
发布于 2019-09-07 21:39
第四题看都没看,,,那么长
点赞 回复 分享
发布于 2019-09-07 21:33
哥,方便请教下第三题你数据怎么读的吗
点赞 回复 分享
发布于 2019-09-07 21:32
不装了 老子A了4道
点赞 回复 分享
发布于 2022-08-27 22:06 江苏
第三题一开始暴力遍历30天,结果用例过了,但是提交超时。优化了一下就过了,没搞懂第二种为什么过,复杂度不都是o(n)? 超时的写法 import java.util.Scanner; public class Main {   private static final byte TEST = 1;   private static final String INPUT =       "4\n"           + "0 10\n"           + "1 2 3 4 5 6 7 8 9 10\n"           + "1 15\n"           + "1 3 5 7 9 11 13 15 17 19 21 23 25 27 29\n"           + "1 7\n"           + "5 9 13 17 21 25 29\n"           + "1 0\n"           + "\n";   public static void main(String[] args) {     Scanner scanner = TEST == 1 ? new Scanner(INPUT) : new Scanner(System.in);     int t = scanner.nextInt();     for (int i = 0; i < t; i++) {       int k = scanner.nextInt();       int m = scanner.nextInt();       scanner.nextLine();       int[] day = new int[31];       int count = m;       for (int j = 0; j < m; j++) {         int d = scanner.nextInt();         day[d] = 1;         int left = d - k > 0 ? d - k : 0;         int right = d + k < 30 ? d + k : 30;         for (int q = left; q <= right; q++) {           if (day[q] != 1) {             day[q] = 2;           }         }       }       scanner.nextLine();       int cur = 1;       while (cur <= 30) {         if (day[cur] == 0) {           if (cur + k <= 30 && day[cur + k] != 1) {             count++;             cur += k + 1;           }         } else {           cur++;         }       }       System.out.println(count);     }     //    }     scanner.close();   } } AC的写法 import java.util.Scanner; public class Main {   private static final byte TEST = 0;   private static final String INPUT =       "4\n"           + "0 10\n"           + "1 2 3 4 5 6 7 8 9 10\n"           + "1 15\n"           + "1 3 5 7 9 11 13 15 17 19 21 23 25 27 29\n"           + "1 7\n"           + "5 9 13 17 21 25 29\n"           + "1 0\n"           + "\n";   public static void main(String[] args) {     Scanner scanner = TEST == 1 ? new Scanner(INPUT) : new Scanner(System.in);     int t = scanner.nextInt();     for (int i = 0; i < t; i++) {       int k = scanner.nextInt();       int m = scanner.nextInt();       int[] num = new int[m + 1];       num[m] = 31 + k;       for (int j = 0; j < m; j++) {         num[j] = scanner.nextInt();       }       System.out.println(solve(k, m, num));     }     scanner.close();   }   private static int solve(int k, int m, int[] num) {     int count = m;     int cur = 1;     for (int i = 0; i <= m; i++) {       if (cur <= num[i]) {         int tmp = (num[i] - cur) / (k + 1);         cur = num[i] + k + 1;         count += tmp;       } else if (cur > 30) {         break;       }     }     return count;   } }
点赞 回复 分享
发布于 2019-09-07 21:56
int main() {     int t;     cin >> t;     int *ans = new int[t];     for (int i = 0; i < t; ++i) {         int k, m;         cin >> k >> m;         int *day = new int[m];         int p = 1;         ans[i] = 0;         for (int j = 0; j < m; ++j) {             cin >> day[j];             while (p < day[i]) {                 ans[i]++;                 p += k + 1;             }         }         while (p < 31) {             ans[i]++;             p += k + 1;         }     }     for (int i = 0; i < t; ++i)         cout << ans[i] << endl;     return 0; } 不懂为什么一直是0
点赞 回复 分享
发布于 2019-09-07 21:42
第四题暴力能过?
点赞 回复 分享
发布于 2019-09-07 21:42
不同岗位的题目是一样的吗😳
点赞 回复 分享
发布于 2019-09-07 21:37
后台开发岗。。。只能用java/C++/C,网易这么看重编程语言的吗😖😖😖
点赞 回复 分享
发布于 2019-09-07 21:35
大佬,讲讲第四题吧
点赞 回复 分享
发布于 2019-09-07 21:33
我在第三题那里死活通不过,他测试数据到底是什么。。。。。。
点赞 回复 分享
发布于 2019-09-07 21:32
大佬求第四题代码
点赞 回复 分享
发布于 2019-09-07 21:32
能求个第三题的代码么大佬
点赞 回复 分享
发布于 2019-09-07 21:26
看来今天是真简单啊,,好多人说AK的-。-
点赞 回复 分享
发布于 2019-09-07 21:25
跪求三
点赞 回复 分享
发布于 2019-09-07 21:25

相关推荐

双非阴暗爬行:我来看看笑死我了,这名字取得好想笑(没有不好的意思)
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
牛客网
牛客企业服务