leetcode 1314 矩阵区域和 题意简述 给出一个矩阵,求以每个位置为中心,边长为2k+12k+12k+1的正方形区域内,覆盖到的原矩阵元素的总和。 算法分析 二维前缀和,前缀和矩阵留出第000行和第000列,注意正方形左上出界时,下标(x,y)(x, y)(x,y)应取为(max(x,0),max(y,0))(max(x, 0), max(y, 0))(max(x,0),max(y,0))。 代码实现 123456789101 2022-01-28 Solution 二维前缀和
leetcode 1996 游戏中弱角色的数量 题意简述 给出一些角色,每个角色有ATKATKATK和DEFDEFDEF属性,若存在另一个角色,它的两个属性值都严格大于自己的两个属性值,称自己为弱角色。求出这些角色中弱角色个数。 算法分析 如果属性仅有一个,直接排序或记录最大值,比较就可以得到答案。考虑对其中一个属性ATKATKATK排序,按降序遍历每一个角色,并记录已遍历过的角色的DEFDEFDEF最大值maxDmaxDmaxD,如果当前角色 2022-01-28 Solution 排序
leetcode 264 丑数 II 题意简述 定义因子只有222或333或555的数为丑数,求第nnn个丑数。 算法分析 法一 最小堆 每次取出堆顶xxx,插入2x,3x,5x2x,3x,5x2x,3x,5x。set或priority_queue。复杂度nlognnlognnlogn。 法二 动态规划 每个丑数,乘以222乘以333乘以555都能得到333个更大的丑数。反过来看每个丑数,都是由之前的某个丑数乘以222乘以333乘以5 2022-01-27 Solution 动态规划
leetcode 169 多数元素 题意简述 给定nnn个数,其中有某个数的出现次数大于⌊n2⌋\lfloor \frac{n}{2} \rfloor⌊2n⌋,求这个数。 算法分析 把这些数分成两个阵营,一个由每一个众数(即所求)组成,另一个由其他所有非众数组成。由题意知前一个阵营人数大于后一个。考虑维护一个候选众数candidatecandidatecandidate以及它出现的次数countcountcount,初始候选众数任 2022-01-27 Solution 摩尔投票
Czs nb! 为什么说操作数是神? 1while (true) cout << "czsnb"; CzsNB⋅czsnb\large{Czs NB \cdot czsnb} CzsNB⋅czsnb 2022-01-25