摘要:        
前言 题目传送门! 更好的阅读体验? 感觉 D1 和 D2 不是同一个难度档次的呀...... 思路 设 $a_j\oplus i < a_i \oplus j$,这意味着数字 $a_j\oplus i$ 中,从个位起前 $k$ 位和 $a_i \oplus j$ 相同,之后第 $k+1$ 位就不同    阅读全文
posted @ 2022-08-27 13:17
liangbowen
阅读(38)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 赛时瞎胡了个结论,然后就过了。 思路 Megan 从左下角到右上角,至少也得要 $(n + m - 1)$ 步。于是考虑让 Stanley 少走几步。 如图,容易看出他最少走 $\min(n - 1, m - 1)$ 步。 答案就是 $n + m - 1 + \    阅读全文
posted @ 2022-08-27 13:17
liangbowen
阅读(26)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 做法:ST 表加尺取。 思路 看到同余,立刻想到作差。我们建立差分数组 $c_i = |a_i - a_{i-1}|$,注意取了绝对值。 此时,我们只需在 $c_i$ 中寻找最长区间 $\left[l, r\right]$,使得 $\gcd(c_l, c_{l+    阅读全文
posted @ 2022-08-27 13:16
liangbowen
阅读(25)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 有点思维难度的 DP 优化题。 小知识 在做这道题之前,你需要知道:$x - y, y - x \le x \oplus y \le x + y$。 证明非常简单,利用异或的性质即可。 思路 容易想到类似 LIS 的东西。设 $dp_i$ 表示以 $i$ 下标元    阅读全文
posted @ 2022-08-27 13:16
liangbowen
阅读(27)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 赛时锁题后看别人代码,怎么都和我想法不一样?幸好没有被 hack。 思路 以下把 L 字形的覆盖网格,直接称为 L。 贪心思考,我们想让每次 L 覆盖的 $1$ 的数量少一些。 手玩一遍样例,我们发现:第一次 L 可能会覆盖多几个 $1$,之后每次必定可以只覆盖    阅读全文
posted @ 2022-08-27 13:16
liangbowen
阅读(29)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 比赛时,这题写了一个 $O(n^3)$ 算法,然后就过了。 以为是数据水,实际上可以证明时间复杂度是 $O(n)$ 的。 思路 关键是一个结论:当 $i < j < k$ 时,若 $a_i, a_j, a_k$ 单调不降或单调不升,则三元组 $(a_i, i),    阅读全文
posted @ 2022-08-27 13:14
liangbowen
阅读(29)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 和官方题解稍有不一样。貌似代码更好理解? 思路 我们假设 $a$ 乘上 $x$,$b$ 乘上 $y$,就能相等,即 $\dfrac{ax}{by} = \dfrac{c}{d}$。 化简:$axd = byc$。也就是 $x \cdot(ad) = y \cdo    阅读全文
posted @ 2022-08-27 13:14
liangbowen
阅读(27)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 普及组月赛第二题。特殊数据好恶心啊,考试差点丢分了。 思路 贪心题,先给 $a$ 数组排个序。 首先,肯定是买小于等于 $w$ 的最大价格的物品。如果买不到,直接输出 $0$。 上面一点可以使用二分实现,速度快一点(直接用 STL 就行)。 然后,按价格从小到大    阅读全文
posted @ 2022-08-27 13:13
liangbowen
阅读(36)
评论(0)
推荐(0)
        
            
        
        
摘要:        
前言 题目传送门! 更好的阅读体验? 校内考试题目。写一篇题解。 思路 首先记录每个字符出现了多少次,然后创建单调栈。 看当前字符是否入栈,如果没有入栈,就不停 pop(),直到: 栈空了。 栈顶字典序大于当前字符。 栈顶元素已经被删掉了(因为栈外面用 cnt[i] 记录了每个数的次数)。 满足单调    阅读全文
posted @ 2022-08-27 13:13
liangbowen
阅读(24)
评论(0)
推荐(0)
        

浙公网安备 33010602011771号