만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

숲 속의 과학자

시간 제한1초메모리 제한1024 MB

요약
N개의 정점으로 만든 이진 탐색 트리의 에너지를 최소화하는 삽입 순서 X에서 주어진 위치 p들의 값을 구합니다.
난이도

어려움10점 중 8점

유형
트리, 그리디, 재귀, 수학
정답자
아직 제출이 없습니다

문제

숲 속 마을에 흰곰, 흑곰, 토끼가 살고 있다. 흰곰은 흑곰에게 연어를 주고 NN개의 정점을 구입했다. 정점에는 11부터 NN까지 번호가 적혀 있다. 흑곰은 NN개의 정점을 상자에 담아 흰곰에게 주었고, 흰곰은 상자를 들고 실험실로 돌아갔다.

흰곰은 NN개의 정점으로 이진 탐색 트리를 만드는 실험을 했다. 이진 탐색 트리는 각 정점이 많아야 하나의 왼쪽 자식과 많아야 하나의 오른쪽 자식을 갖는 트리이다. 임의의 정점 xx에 대해, 정점 xx의 왼쪽 서브트리에는 xx보다 작은 번호만 적혀 있고 오른쪽 서브트리에는 xx보다 큰 번호만 적혀 있다.

흰곰의 연구 노트. 상자에서 NN개의 정점을 꺼내 나열한다. 이것은 수열 X={x1,x2,⋯ ,xN}X=\{x_1,x_2,\cdots,x_N\}으로 나타낼 수 있다. 정점 x1x_1을 루트로 정한다. 정점 x2,⋯ ,xMx_2,\cdots,x_M을 순서대로 트리에 추가한다. 과정이 진행되는 동안 트리는 항상 루트가 x1x_1인 이진 탐색 트리이다. 루트를 제외한 모든 정점의 부모 정점은 한 번 결정되면 변하지 않는다.

정점 uu와 정점 vv를 잇는 경로에 포함된 간선의 개수를 d(u,v)d(u,v)라고 하자. 루트가 x1x_1인 트리의 높이는 H=max⁡1≤i≤Nd(x1,xi)H=\max_{1\le i\le N} d(x_1,x_i) 이다.

수열 XX로 만든 트리의 에너지는 E=∑i=1Nxi(N+1)i−HE=\sum_{i=1}^{N}\frac{x_i}{(N+1)^{i-H}} 이다.

흰곰은 N!N!번의 실험 끝에 에너지 EE를 최소화하는 수열 XX를 찾아내고, 이를 풀잎에 기록해 두었다. 흰곰이 실험을 마치고 동굴에 들어가 잠든 사이에 토끼가 풀잎의 일부를 먹어 버렸다. 잠에서 깬 흰곰은 이를 보고 슬퍼했다. 토끼는 자신이 먹어 없앤 수열의 일부를 계산해서 흰곰에게 알려주기로 했다.

MM개의 정수 p1,p2,⋯ ,pMp_1,p_2,\cdots,p_M이 주어진다. 에너지 EE를 최소화하는 수열 XX에 대해 xp1,xp2,⋯ ,xpMx_{p_1},x_{p_2},\cdots,x_{p_M}을 구하시오.

입력

첫 번째 줄에 NN, MM이 공백으로 구분되어 주어진다. (2≤N≤10182\le N\le 10^{18}, 1≤M≤min⁡(N,2×105)1\le M\le\min(N,2\times 10^5))

두 번째 줄에 p1,p2,⋯ ,pMp_1,p_2,\cdots,p_M이 공백으로 구분되어 주어진다. (1≤pi≤N1\le p_i\le N, pi<pi+1p_i<p_{i+1})

입력으로 주어지는 모든 수는 정수이다.

출력

첫 번째 줄에 xp1,xp2,⋯ ,xpMx_{p_1},x_{p_2},\cdots,x_{p_M}을 공백으로 구분하여 출력한다.

예제2

  1. 예제 1

    입력
    5 5
    1 2 3 4 5
    
    예상 출력
    2 1 4 3 5
    
  2. 예제 2

    입력
    1000000000000000000 1
    5
    
    예상 출력
    27222480487972865