N = int(input()) A = list(map(int, input().split())) D = [0] * (N+1) for i, v in enumerate(A): D[v] = i parent = [0] * (N+1) for i in range(1, N): if D[i] < D[i+1]: parent[i+1] = i else: j = i while 1: if parent[j] == 0: parent[j] = i+1 break elif D[parent[j]] < D[i+1]: parent[i+1] = parent[j] parent[j] = i+1 break else: j = parent[j] B = [0] * N for i in range(1, N): B[i] = B[D[parent[A[i]]]] + 1 print(*B) C = [0] * N for i in range(N-1, 0, -1): C[D[parent[A[i]]]] += 1 + C[i] print(*C)