↓快轉到主要內容

Medium

LeetCode 2874: Maximum Value of an Ordered Triplet II
·1 分鐘
LeetCode Medium Prefix-Sum Array
LeetCode 2874 解題筆記:枚舉中間的 j,左邊取前綴最大、右邊取後綴最大;也可以一次掃描維護最大值和最大差
LeetCode 1222: Queens That Can Attack the King
·1 分鐘
LeetCode Medium Array Matrix Simulation
LeetCode 1222 解題筆記:從國王往八個方向一步一步走,每個方向第一個遇到的皇后就能攻擊;皇后放進集合方便查詢
LeetCode 2044: Count Number of Maximum Bitwise-OR Subsets
·2 分鐘
LeetCode Medium Backtracking Bit-Manipulation Enumeration
LeetCode 2044 解題筆記:最大 OR 就是全部 OR 起來;回溯時一旦達到最大值,剩下的直接算 2^k
LeetCode 3627: Maximum Median Sum of Subsequences of Size 3
·1 分鐘
LeetCode Medium Math Greedy Sorting Game-Theory Array
LeetCode 3627 解題筆記:排序後每次拿最大的兩個和最小的一個,中位數是第二大的;答案是從尾端往前每隔一個取,共 n / 3 個
LeetCode 665: Non-decreasing Array
·1 分鐘
LeetCode Medium Array
LeetCode 665 解題筆記:遇到下降時決定改哪一個:能把 nums[i-1] 降下來就降,不行(nums[i] < nums[i-2])才把 nums[i] 拉高;第二次下降就失敗
LeetCode 2745: Construct the Longest New String
·1 分鐘
LeetCode Medium Dynamic-Programming Math Greedy Brainteaser
LeetCode 2745 解題筆記:AA 和 BB 必須交替出現,最多用 min(x, y) 對,多的那種還能再多放一個;AB 全部都能接上
LeetCode 1248: Count Number of Nice Subarrays
·2 分鐘
LeetCode Medium Sliding-Window Prefix-Sum Hash-Table Array
LeetCode 1248 解題筆記:「剛好 k 個奇數」不單調,改成「最多 k 個」減「最多 k - 1 個」;或用前綴和 + 雜湊表
LeetCode 3619: Count Islands With Total Value Divisible by K
·2 分鐘
LeetCode Medium Dfs Bfs Matrix Graph
LeetCode 3619 解題筆記:網格 flood fill 加總每座島的值;格子到 10^5,用迭代避免遞迴太深
LeetCode 3618: Split Array by Prime Indices
·1 分鐘
LeetCode Medium Math Number-Theory Sieve Array
LeetCode 3618 解題筆記:判斷的是 index 是不是質數;用埃氏篩一次算出 0..n-1 哪些是質數,比每個 index 試除快
LeetCode 958: Check Completeness of a Binary Tree
·1 分鐘
LeetCode Medium Tree Binary-Tree Bfs
LeetCode 958 解題筆記:完整性是整體性質,用 BFS 檢查第一個空位之後還有沒有節點
LeetCode 1008: Construct Binary Search Tree from Preorder Traversal
·1 分鐘
LeetCode Medium Tree Bst Binary-Tree Recursion
LeetCode 1008 解題筆記:切陣列遞迴 O(n^2),帶上界遞迴 O(n)
LeetCode 2391: Minimum Amount of Time to Collect Garbage
·1 分鐘
LeetCode Medium Prefix-Sum String Array
LeetCode 2391 解題筆記:撿垃圾時間就是垃圾總數;每台車只要開到自己那種垃圾的最後一間,路程用前綴和