N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
A_with_idx = sorted((a, i) for i, a in enumerate(A))
A_sorted = []
idx_map = []
for pair in A_with_idx:
a = pair[0]
i = pair[1]
A_sorted.append(a)
idx_map.append(i)
B_sorted = sorted(B)
pref = [0] * (N + 1)
for i in range(N):
pref[i + 1] = max(pref[i], max(A_sorted[i] - B_sorted[i], 0))
suff = [0] * (N + 1)
for i in range(N - 1, -1, -1):
suff[i] = max(suff[i + 1], max(A_sorted[i + 1] - B_sorted[i], 0))
C_sorted = [max(pref[i], suff[i]) for i in range(N + 1)]
C = [0] * (N + 1)
for i, original_idx in enumerate(idx_map):
C[original_idx] = C_sorted[i]
print(*C)
컴파일 시 표준 출력 (stdout) 메시지
Compiling 'ho_t1.py'...
=======
adding: __main__.pyc (deflated 38%)
=======
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |