最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

復(fù)盤|第309場周賽

2022-10-22 20:08 作者:UCLmsc  | 我要投稿

2399. 檢查相同字母間的距離?https://leetcode.cn/problems/check-distances-between-same-letters/

【哈希表】統(tǒng)計每個字母的位置,遍歷哈希表,判斷每個字母的下標之差是否等于distance[i]。

2400. 恰好移動 k 步到達某一位置的方法數(shù)目?https://leetcode.cn/problems/number-of-ways-to-reach-a-position-after-exactly-k-steps/

【記憶化搜索】想到dp[i] [j]表示在i位置,走j步或剩j步,當前狀態(tài)下的方案數(shù)。dp數(shù)組為了避免負數(shù),可以寫成記憶化搜索,dfs(x, left),x表示位置,left表示還剩余可走的步數(shù),首先把edge case處理,當前方案數(shù) = 往左走方案數(shù) + 往右走的方案數(shù),可以加幾個剪枝,①距離 > k走不到 ②d與k奇偶性需一致。left == 0時表示已經(jīng)走到終點,是一種方案。

【組合數(shù)學(xué)】推導(dǎo):總共向右走r步,向左走l步,則r + l = k,r - l = m,r = (k + m) / 2, 向右方案數(shù)Comb(k, r),即在k步中選擇r步的方案數(shù)。

2401. 最長優(yōu)雅子數(shù)組?https://leetcode.cn/problems/longest-nice-subarray/

【滑動窗口】根據(jù)題意,要求子數(shù)組內(nèi)每對元素與運算的結(jié)果均為0,即找到一個最長的區(qū)間,區(qū)間里每一個數(shù)的對應(yīng)二進制位只能有一個1,因為如果有2個1,那么這兩個位置對起來(1&1),結(jié)果就是1了,這題數(shù)據(jù)范圍10^9,一共要用三十二個二進制位存,每個位上至多只能有一個1。技巧:當x&y已經(jīng)是0了,可以tmp = x|y,后一個碰到的z直接 z&tmp 就行(因為或運算保留了xy里所有1)。代碼中,用雙指針維護滑動窗口,or_存滑動窗口內(nèi)的或的結(jié)果,xor左指針元素,相當于彈出左指針元素。如果or _ & x不為0,則需要把左指針往右移(彈出左指針指向元素彈出)。同樣,手寫max會加速python。

2402. 會議室 III https://leetcode.cn/problems/meeting-rooms-iii/

【雙堆模擬】 用兩個小頂堆模擬:一個堆維護start_i時刻空閑的會議室的編號,另一個堆維護start_i時刻正在使用的會議室的結(jié)束時間和編號。


復(fù)盤|第309場周賽的評論 (共 條)

分享到微博請遵守國家法律
甘德县| 水城县| 商水县| 婺源县| 清水县| 新田县| 小金县| 舞钢市| 鄢陵县| 辽源市| 乌什县| 临澧县| 湖南省| 柳州市| 巴东县| 南安市| 抚州市| 宁化县| 延川县| 宝山区| 诸暨市| 襄汾县| 罗田县| 通河县| 出国| 井冈山市| 阜阳市| 云和县| 二手房| 上栗县| 兴和县| 崇州市| 遵化市| 彭泽县| 普洱| 平定县| 宁德市| 环江| 西城区| 桦甸市| 卢湾区|