#597. 淘汰赛(弱要求)

淘汰赛(弱要求)

Cannot parse: (0 , import_utils.normalizeSubtasks) is not a function or its return value is not iterable

Background

比赛啊,总是有输有赢的。

Description

2n2^n 名玩家在进行淘汰赛,他们的 idid 是从 112n2^n 间的整数,记为 ii。 他们分别具有自己的实力值,记为 aia_i

开始时为第 11 轮。在第 cc 轮开始前,将 (c1)(c-1) 轮胜利的玩家按 idid 升序排列。然后,让排在队伍里的第 2i2i 名玩家与第 (2i1)(2i-1) 名玩家进行对抗,实力值高者胜出。

现你已知 nn 和每一名玩家的实力值 aia_i,请按照 i=12...2ni=1,2,...,2^n 的顺序求出第 ii 名玩家参加的最后一场比赛,是第几轮。

Format

Input

第一行:一个正整数 nn

第二行:nn 个互不相同的正整数 a1a2...a2na_1,a_2,...,a_{2^n}

Output

2n2^n 行,每行一个正整数,表示第 ii 名玩家参加的最后一轮比赛的轮次。

Samples

2
2 4 3 1
1
2
2
1
1
2 1
1
1
3
4 7 5 1 6 3 2 8
1
3
2
1
2
1
1
3

Limitation

  • 1n181\le n\le 18
  • 1ai2n1\le a_i \le 2^n