菜鸟笔试
鼠鼠0.66 0.13 1,太菜了

第三题代码:
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
Set<Integer> result = new HashSet<>();
Set<Integer> prev = new HashSet<>();
for (int num : arr) {
Set<Integer> current = new HashSet<>();
current.add(num);
for (int s : prev) {
current.add(orValue | num);
}
result.addAll(current);
prev = current;
}
System.out.println(result.size());
}
}
比较朴素的解法
第三题代码:
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
Set<Integer> result = new HashSet<>();
Set<Integer> prev = new HashSet<>();
for (int num : arr) {
Set<Integer> current = new HashSet<>();
current.add(num);
for (int s : prev) {
current.add(orValue | num);
}
result.addAll(current);
prev = current;
}
System.out.println(result.size());
}
}
比较朴素的解法
全部评论
第一题,用递归,cal(a, b) = 1 + (a/2, b/2), 直到a=b.
第二题,括号匹配,第一个操作没有意义,当成10010101数组处理,最后要么全1,要么全0,只需要考虑第二个操作,第二个操作是每次可以把相差偶数位的两个1转化为两个0(或者反过来),那么用栈保存1的下标,每次遇到1就看和栈顶的1下标是否相差偶数位,相差直接弹出栈顶,否则下标入栈,最后栈是空的意味着能全部配对成功。
求第三题题解
第三题咋做的呢大佬
1 0.13 0.1
第一题是因为要不断的二分去找对应的点,因为2的n次方不一定在区间内,第二题我一直在做,不知道为什么只有0.13,求牛友帮助
老哥六呀
有知道第二题怎么写的佬吗
求一下第三题题解
第二题只有0.16
0.9 0.13 0.1
大佬最后一题怎么优化的呀?我一直超时
相关推荐
06-24 22:00
重庆大学 单片机 点赞 评论 收藏
分享
今天被通知部门原因解散,因为是大家在开玩笑,大家软件天塌了,应届生毕业一年部门没了,被迫离职了,问了组里的老人保留了广东(广州、深圳等)、浙江(杭 州)福建等部分城市继续运营。找下一份工作了
点赞 评论 收藏
分享
06-04 10:32
安徽大学 单片机 实习僧和BOSS直聘都投了几十家,硬件开发,硬件测试,嵌入式都投了,全是已读不回……我现在考虑想在秋招前速成一个Linux项目,其实现在完全不知道自己要找什么方向的,只能海投了,求大佬们给点意见😭😭😭


点赞 评论 收藏
分享

点赞 评论 收藏
分享