nums = list(map(int,input().split()))
n = len(nums)
res = [nums[0]]
# # 前缀和
# pre = [0] *(n+1)
# for i in range(1,n+1):
# pre[i] = nums[i]+pre[i-1]
# mp = dict()
for i in range(1,n):
idx,sm = -1, 0
for j in range(len(res)-1,-1,-1):
sm += res[j]
if sm==nums[i]:
idx = j
break
elif sm > nums[i]:
break
if idx>=0:
res = res[:idx]
res.append(2 * nums[i])
else:
res.append(nums[i])
print(" ".join(list(map(str,res[::-1]))))
1、栈数据合并(华为机考)
于 2024-03-26 15:35:42 首次发布