程序从Python中的数字列表中找到最长符号交替子序列的长度
假设我们有一个称为nums的数字列表,我们必须找到在每个连续数字上翻转符号的最长子序列的长度。
因此,如果输入类似于nums=[1,3,-6,4,-3],那么输出将为4,因为我们可以选择[1,-6,4,-3]。
为了解决这个问题,我们将遵循以下步骤-
pos:=0,neg:=0
对于每n个数字,执行
pos:=neg+1
负:=pos+1
如果n<0,则
除此以外,
返回pos和neg的最大值
让我们看下面的实现以更好地理解-
示例
class Solution:
def solve(self, nums):
pos = neg = 0
for n in nums:
if n < 0:
neg = pos + 1
else:
pos = neg + 1
return max(pos, neg)
ob = Solution()nums = [1, 3, -6, 4, -3]
print(ob.solve(nums))输入项
[1, 3, -6, 4, -3]
输出结果
4
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西