每日程式設計 leetcode127周競賽

2021-09-12 08:01:23 字數 820 閱讀 1368

這次的題目真的是一點都不難,但由於本人太菜了,只做出三道

題目描述:

給定乙個整數陣列 a,我們只能用以下方法修改該陣列:我們選擇某個個索引 i 並將 a[i] 替換為 -a[i],然後總共重複這個過程 k 次。(我們可以多次選擇同乙個索引 i。)

以這種方式修改陣列後,返回陣列可能的最大和。

示例 1:

輸入:a = [4,2,3], k = 1

輸出:5

解釋:選擇索引 (1,) ,然後 a 變為 [4,-2,3]。

示例 2:

輸入:a = [3,-1,0,2], k = 3

輸出:6

解釋:選擇索引 (1, 2, 2) ,然後 a 變為 [3,1,0,2]。

示例 3:

輸入:a = [2,-3,-1,5,-4], k = 2

輸出:13

解釋:選擇索引 (1, 4) ,然後 a 變為 [2,3,-1,5,4]。

分析:最簡單的一道題了,其實就是k此遍歷,每次找到最小值取反,最後求和

func largestsumafterknegations(a int, k int) int 

*/func bstfrompreorder(preorder int) *treenode

root:=&treenode

cur:=root

pa:=root

for i:=1;ip.valelse

}if pa.val>p.valelse

}return root

}

還有一道笨階乘的題,沒寫出來,看到題就pass了

LeetCode 127 單詞接龍

解題思路 1 這道題要找乙個最短路徑,可以聯想到圖的相關演算法 雖然我當時沒想到 那麼是不是應該使用最短路徑的相關演算法呢。其實不用 因為這個圖里每條邊的長度都是1,用乙個廣度優先演算法就搞定了。2規模的問題,如果你遍歷list裡的每個單詞的話,你會發現一直超時,因為有的list的規模給到了上千,每...

Leetcode 127單詞接龍

給定兩個單詞 beginword 和 endword 和乙個字典,找到從 beginword 到 endword 的最短轉換序列的長度。轉換需遵循如下規則 每次轉換只能改變乙個字母。轉換過程中的中間單詞必須是字典中的單詞。說明 示例 1 輸入 beginword hit endword cog wo...

Leetcode 127 單詞接龍

給定兩個單詞 beginword 和 endword 和乙個字典,找到從 beginword 到 endword 的最短轉換序列的長度。轉換需遵循如下規則 每次轉換只能改變乙個字母。轉換過程中的中間單詞必須是字典中的單詞。說明 如果不存在這樣的轉換序列,返回 0。所有單詞具有相同的長度。所有單詞只由...