7.2leetcode
1.第一题:
这道题虽然是一道简单题,但是我还是写不出来不用排序的解法,而且分的情况也挺多种的,大早上的真是把我给绕糊涂了,鬼知道这一道题我怎么就罗嗦了30几行代码,欲哭无泪,代码如下:
class Solution:
def largestSumAfterKNegations(self
, A
: List
[int], K
: int) -> int:
b
=sorted(A
)
num
=0
for value
in b
:
if value
<0:
num
+=1
else:
break
if num
==0:
if K
%2==0:
pass
else:
b
[0]=-b
[0]
elif num
<K
:
if (K
-num
)%2==0:
for i
in range(num
):
b
[i
]=-b
[i
]
else:
for i
in range(num
-1):
b
[i
]=-b
[i
]
if -b
[num
-1]<b
[num
]:
pass
else:
b
[num
-1]=-b
[num
-1]
b
[num
]=-b
[num
]
else:
for i
in range(K
):
b
[i
]=-b
[i
]
sum=0
for val
in b
:
sum=sum+val
return sum
转载请注明原文地址:https://ipadbbs.8miu.com/read-23557.html