摘要: 一开始在坐标表示上迷糊了好长时间。使用i表示行,j表示列的遍历方法,在翻转问题上不太好用。学习了一下灵神的写法。这样用r,l表示清晰多了。 class Solution { public: vector<vector<int>> reverseSubmatrix(vector<vector<int> 阅读全文
posted @ 2026-03-21 20:38 冰雪聪明琪露诺 阅读(2) 评论(0) 推荐(0)
摘要: 思路上和上一题差不多,只不过是使用 \(3\) 个二维前缀和来分别统计数量。 class Solution { public: unordered_map<char,int> proj{ {'X',0}, {'Y',1}, {'.',2} }; int numberOfSubmatrices(vec 阅读全文
posted @ 2026-03-19 18:26 冰雪聪明琪露诺 阅读(1) 评论(0) 推荐(0)
摘要: StreamPetr认为当前的时序融合方法,大致分为两种:基于BEV的时序融合和透视图的时序融合。BEV时序融合方法明确将历史帧的BEV特征变换到当前帧,然而BEV时序融合考虑的是不同时刻静态物体的BEV特征应该对齐,忽略了运动物体的建模。基于透视时序的方法主要基于DETR,该方法保留之前时刻的多视 阅读全文
posted @ 2026-03-18 23:53 冰雪聪明琪露诺 阅读(7) 评论(0) 推荐(0)
摘要: 从题意可以很容易看出是要利用二维前缀和,快速判断区域之和是否大于k。不太熟悉二维前缀和,用动态规划写了一个比较复杂的,事实上可以通过添加 \(0\) 维度解决这个麻烦的初始化。 二维前缀和 class Solution { public: int countSubmatrices(vector<ve 阅读全文
posted @ 2026-03-18 18:18 冰雪聪明琪露诺 阅读(2) 评论(0) 推荐(0)
摘要: 题目概览 该问题包括 LeetCode84:柱状图中的最大矩形、LeeCode85:最大矩形和[LeetCode1727:重新排列后的最大子矩阵]。后两道题都可以分解为第一道题的做法。 柱状图中的最大矩形 本题是该类问题的核心,理解了这一道题的解法,下两道题就比较容易了。想要求解柱状图中的最大矩形, 阅读全文
posted @ 2026-03-17 18:46 冰雪聪明琪露诺 阅读(5) 评论(0) 推荐(0)
摘要: 该题与LeetCode84:柱状图中的最大矩形、LeeCode85:最大矩形息息相关。后面我会将这三道题整理到一个系列中。 核心思想就是计算这个矩形的每一层向上 \(1\) 延伸的高度,将每一层作为一个柱状图,问题转化为计算柱状图中的最大矩形。非常类似于LeeCode85:最大矩形的做法。不过不同的 阅读全文
posted @ 2026-03-17 17:05 冰雪聪明琪露诺 阅读(7) 评论(0) 推荐(0)
摘要: 前缀和 构建前缀和数组和推导前缀和计算 阅读全文
posted @ 2026-03-16 16:36 冰雪聪明琪露诺 阅读(1) 评论(0) 推荐(0)
摘要: 该问题的规模不大,可以用暴力。最优解法是使用前缀和进行优化,不过要特别注意前缀和的边界,容易把人绕晕。基本思路是把每个位置当做菱形的某一个点(我这里当做是右点),然后对每个可能的边长进行遍历。已知边长的情况下,可以推导出菱形四个点的位置,已知位置,则可以通过预计算的斜边前缀和(或暴力)计算出四个边的 阅读全文
posted @ 2026-03-16 16:31 冰雪聪明琪露诺 阅读(4) 评论(0) 推荐(0)
摘要: 鉴于数据规模,直接维护运算结果肯定会超时。问题的关键是怎么使用一种方法能够不即时维护,然后在getIndex的时候也能正确高效返回。这里采用的一种方法是将当前数据表示成 \(val[idx]*mul+add\) 的形式。 比如数 \(val_{idx}\) 有 \(val[idx]*mul+add= 阅读全文
posted @ 2026-03-15 14:58 冰雪聪明琪露诺 阅读(2) 评论(0) 推荐(0)
摘要: 回溯+排序 数据量很小,\(1<=n<=10\),所以可以放心使用回溯,然后按照题目要求获得第 \(k\) 大即可 class Solution: def getHappyString(self, n: int, k: int) -> str: all_string=[] # 回溯 def trac 阅读全文
posted @ 2026-03-14 14:53 冰雪聪明琪露诺 阅读(2) 评论(0) 推荐(0)