import sys def find_closest_subarray(a, b): # 计算数组a的和 sum_a = sum(a) n = len(b) # 初始化最小差值和最优解的开始和结束索引 min_diff = float("inf") best_start = 0 best_end = 0 # 遍历b的所有子数组 for start in range(n): current_sum = 0 for end in range(start, n): current_sum += b[end] current_diff = abs(current_sum - sum_a) # 如果找到更小的差值,则更新解 if current_diff < min_diff: min_diff = current_diff best_start = start best_end = end # 如果差值相同,则选择起始点更小的那个 elif current_diff == min_diff and start < best_start: best_start = start best_end = end # 建立最优子数组并返回 return b[best_start : best_end + 1] def main(): input = sys.stdin.read data = input().strip().split() n, m = int(data[0]), int(data[1]) a = list(map(int, data[2 : n + 2])) b = list(map(int, data[n + 2 : n + 2 + m])) # 得到最接近的子数组 closest_subarray = find_closest_subarray(a, b) print(" ".join(map(str, closest_subarray))) if __name__ == "__main__": main()