首页 > 猿辅导笔试8.22,
头像
木子舟
编辑于 2020-08-22 20:32
+ 关注

猿辅导笔试8.22,

import java.util.*;

public class Main {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
Map<Integer, Integer> m = new HashMap<>();
for (int i = 1; i <= n; i++) {
m.put(i, sc.nextInt());
}
List<Integer> result = new ArrayList<>();
Set<Integer> visited = new HashSet<>();
int level = 0;
while(Math.pow(2, level)<=n){
result.add((int) Math.pow(2, level));
visited.add((int) Math.pow(2, level));
level++;
}
level-=1;
while (level>0){
int start = (int) Math.pow(2, level);
int end = (int) Math.pow(2, level+1)-1;
for (int i = start; i <= end && i<=n; i++) {
if (i == end){
result.add(i);
visited.add(i);
continue;
}
if (!visited.contains(i) && !visited.contains(2*i) && !visited.contains(2*i+1)){
result.add(i);
visited.add(i);
}
}
level--;
}
List<Integer> realResult = new ArrayList<>();
for (int index:result){
realResult.add(m.get(index));
}
for (int i = 0; i < realResult.size(); i++) {
System.out.print(realResult.get(i));
if (i!=realResult.size()-1){
System.out.print(" ");
}
}
}

}

第一题
本地测试没问题,提交上去一直报ac 0%,啥子问题,有点郁闷

全部评论

(13) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐