美团笔试
为什么编程代码自测过了,但是提交就红了
#美团求职进展汇总#
全部评论
因为一来测试用例就是十的九次方,要使用dp数组会OOM,不用要当心重复计算太多,
第二题感觉有规律的,累加2^p -1 * 2^(p-1) ,然后剩下的再加上去就行。但是我写错了
用ai改的:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
scanner.nextLine(); // 消耗换行符
while (n-- > 0) {
long num = scanner.nextInt();
scanner.nextLine(); // 消耗换行符(如果输入有)
long ans = 0;
long i = 1; // 初始i是2^0=1,对应k=1
long p = 1; // p表示当前区间的指数k
// 处理完整区间
while (i * 2 <= num) { // 循环直到i*2超过num
ans += (Math.pow(2, p - 1) * (Math.pow(2, p) - 1));
i *= 2;
p++;
}
// 处理剩余部分
if (i <= num) {
long contribution = (long) (Math.pow(2, p) - 1);
long count = num - i + 1;
ans += contribution * count;
}
System.out.print(ans + " ");
}
}
}
第二题会超int上限要用long,但是我也只过了20%,说我超时,但是明明是O(n)不知道为啥
第一遍提交发现超内存了,改完第二遍发现又超时了,美团你有点太超过了
实习笔试要做对几道编程题才算过呀
第二题题目是啥佬们
选择题大模型题目都是蒙的,JAVA的题目估计都做对了,算法题第一题过了,第二题过了5%,能进面吗😂,大概笔试完之后多久面试?
相关推荐
点赞 评论 收藏
分享