华为OD机试真题Python实现【计算堆栈中的剩余数字】真题+解题思路+代码(2022&2023)

计算堆栈中的剩余数字

题目

向一个空栈中依次存入正整数
假设入栈元素N(1<=N<=2^31-1)
按顺序依次为NxN4N3N2N1,
当元素入栈时,如果N1=N2+...Ny(y的范围[2,x],1 <= x <= 1000)
则 N1 到 Ny 全部元素出栈,重新入栈新元素M(M=2*N1)
如依次向栈存储6123,当存储612
栈底至栈顶以此为[6、1、2]:当存入3时,3=2+1,
321全部出栈,重新入栈元素6(6=2*3)此时栈中有元素6
因为6=6,所有两个六全部出栈存入12
最终栈中只剩一个元素12

你可能感兴趣的:(华为OD机试Python真题,华为,计算堆栈中的剩余数字,python,华为od上机题,华为od机试题)