力扣組合三連 做題記錄

2021-10-09 10:19:39 字數 1401 閱讀 8435

組合一組合二

組合三三題的詳細題解鏈結裡面很多,不懂就過去看

題目:給定兩個整數 n 和 k,返回 1 … n 中所有可能的 k 個數的組合。

這個題用回溯解決,所以就有了模板,直接上**。

class

solution

for(

int i=startindex; i<=n; i++)}

public

: vector

int>>

combine

(int n,

int k)

};

給定乙個陣列 candidates 和乙個目標數 target ,找出 candidates 中所有可以使數字和為 target 的組合。新增條件candidates 中的每個數字在每個組合中只能使用一次。

說明:所有數字(包括目標數)都是正整數。

解集不能包含重複的組合。

示例 1:

輸入: candidates = [10,1,2,7,6,1,5], target = 8,

所求解集為:

[[1, 7],

[1, 2, 5],

[2, 6],

[1, 1, 6]

]這個題也是回溯,模板繼續套用,但是多了一些剪枝條件

class

solution

for(

int i=rus;i

size()

;i++)}

vector

int>>

combinationsum2

(vector<

int>

& candidates,

int target)

};

找出所有相加之和為 n 的 k 個數的組合。組合中只允許含有 1 - 9 的正整數,並且每種組合中不存在重複的數字。

說明:所有數字都是正整數。

解集不能包含重複的組合。

示例 1:

輸入: k = 3, n = 7

輸出: [[1,2,4]]

這個依然是回溯,大的模板一致,也就是引數的變化和一些剪枝

class

solution

for(

int i=pos;i<

10;i++)}

vector

int>>

combinationsum3

(int k,

int n)

};

筆記比較簡略,不懂就回去看題

做題記錄 ZJOI2014 力

給出 n 個數 q 1,q 2,dots q n 定義 f j sum frac sum frac e i frac 對 1 leq i leq n 求 e i 的值。f j sum frac sum frac 即求 e i frac sum i frac sum n frac 令 x i dfra...

力扣刷題記錄05

題目分類 二分查詢 時間 2020 09 09 題目一 兩數之和 兩數之和 ii 輸入有序陣列 給定乙個已按照公升序排列 的有序陣列,找到兩個數使得它們相加之和等於目標數。函式應該返回這兩個下標值 index1 和 index2,其中 index1 必須小於 index2。說明 返回的下標值 ind...

力扣刷題記錄2

第一題是每日一題的簡單題。需要記的並不多,一是用迭代器對vector的一些基本操作。可以參考這裡 for vector iterator iter num.begin iter num.end iter 另外是快排的思想。這種思想實用性很廣,即使不需要排序,在找出最大的k個數,對陣列進行分割 以中間...