![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 75
爱学习的图灵机
计算机新生努力学习
展开
-
【Leetcode】440. 字典序的第K小数字 题解 详细描述 C++
440. 字典序的第K小数字 - 力扣(LeetCode) (leetcode-cn.com)思路构建数字字典树:可以在nnn的范围内建出这个字典树。找K小数,考虑朴素算法:深搜从上到下,从左到右,一个一个搜,搜KKK次找到的就是KKK小数。如n=109,k=103n = 109,k = 103n=109,k=103, 那么找到路线就是1-10-100-101-102-103。这个做法复杂度显然是O(K)O(K)O(K)的,数据范围在1e91e91e9会超时,所以考虑优化:由于该树除了包含nnn原创 2022-03-23 20:27:03 · 1832 阅读 · 0 评论 -
最大异或和——广义前缀和的应用 Trie树
最大异或和给定一个非负整数数列 a,初始长度为 N。请在所有长度不超过 M 的连续子数组中,找出子数组异或和的最大值。子数组的异或和即为子数组中所有元素按位异或得到的结果。注意:子数组可以为空。输入格式第一行包含两个整数 N,M。第二行包含 N 个整数,其中第 i 个为 ai。输出格式输出可以得到的子数组异或和的最大值。数据范围对于 20% 的数据,1≤M≤N≤100对于 50% 的数据,1≤M≤N≤1000对于 100% 的数据,1≤M≤N≤105,0≤ai≤231−1输入样原创 2022-01-31 20:05:07 · 2487 阅读 · 0 评论 -
力扣664.奇怪的打印机题解
题目地址有台奇怪的打印机有以下两个特殊要求:打印机每次只能打印由 同一个字符 组成的序列。 每次可以在任意起始和结束位置打印新字符,并且会覆盖掉原来已有的字符。 给你一个字符串 s,你的任务是计算这个打印机打印它需要的最少打印次数。示例 1:输入:s = “aaabbb” 输出:2 解释:首先打印 “aaa” 然后打印 “bbb”。 示例 2:输入:s = “aba” 输出:2 解释:首先打印 “aaa” 然后在第二个位置打印 “b” 覆盖掉原来的字符 ‘a’。提示:1 <= s.l.原创 2021-05-24 09:15:54 · 257 阅读 · 0 评论