关注
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int n = sc.nextInt();
int len = (int) (Math.pow(2, n) - 1);
int[] a = new int[len];
for (int i = 0; i < a.length; i++)
a[i] = sc.nextInt();
int one = sc.nextInt();
int two = sc.nextInt();
int indexOne = -1;
int indexTwo = -1;
for (int i = 0; i < len; i++) {
if (a[i] == -1)
continue;
if (a[i] == one)
indexOne = i;
if (a[i] == two)
indexTwo = i;
}
if (indexOne == -1 || indexTwo == -1)
System.out.println(-1);
else {
indexOne = Math.min(indexOne, indexTwo) + 1;
indexTwo = Math.max(indexOne, indexTwo) + 1;
int cenOne = 0;
int cenTwo = 0;
int temSum = 0;
for (int i = 0; i < n; i++) {
int now = (int) Math.pow(2, i);
if (temSum < indexOne && (temSum + now) >= indexOne)
cenOne = i + 1;
if (temSum < indexTwo && (temSum + now) >= indexTwo)
cenTwo = i + 1;
temSum += now;
}
while (cenOne != cenTwo) {
cenTwo--;
indexTwo /= 2;
}
while (indexOne != indexTwo) {
indexOne /= 2;
indexTwo /= 2;
}
System.out.println(a[indexOne - 1]);
}
}
}
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 牛客2025仙途报告 #
4665次浏览 138人参与
# 礼物开箱Plog #
1690次浏览 75人参与
# 2025年终总结 #
177664次浏览 3002人参与
# 工作两年,想和老板谈涨薪怎么说 #
38805次浏览 175人参与
# 你面试体验感最差/最好的公司 #
22541次浏览 366人参与
# 秋招落幕,你是He or Be #
15870次浏览 293人参与
# 考公VS就业,你怎么选? #
88128次浏览 497人参与
# 一人说一个提前实习的好处 #
14292次浏览 233人参与
# 今年你最想重开的一场面试是? #
5843次浏览 76人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
13715次浏览 130人参与
# 重来一次,你会对开始求职的自己说 #
6988次浏览 177人参与
# 找工作,行业重要还是岗位重要? #
85843次浏览 1699人参与
# 各大公司公布25年Q3财报,你怎么看? #
5052次浏览 50人参与
# 实习没事做是福还是祸? #
18917次浏览 273人参与
# 机械制造秋招总结 #
97369次浏览 878人参与
# 宁德时代求职进展汇总 #
154164次浏览 686人参与
# 工作中听到最受打击的一句话 #
8472次浏览 134人参与
# 职场新人体验 #
156938次浏览 1121人参与
# 团建是“福利”还是是 “渡劫” #
8174次浏览 161人参与
# 反问环节如何提问 #
126464次浏览 2670人参与