7.2日leetcode

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
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章