from itertools import accumulate from collections import defaultdict N = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) A.sort() B.sort() # 左揃え left = [] for i in range(N - 1): left.append(abs(A[i] - B[i])) left = list(accumulate(left)) # 右揃え right = [] for i in range(1, N): right.append(abs(A[-i] - B[-i])) right = list(accumulate(right)) right.reverse() #print(left) #print(right) memo = defaultdict(list) for i in range(N): score = 0 if i != 0: score += left[i - 1] if i != N - 1: score += right[i] # A[i] を手元に残す memo[score].append(A[i]) ans1 = min(memo.keys()) ans2 = list(sorted(set(memo[ans1]))) print(ans1) print(*ans2)