上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 30 下一页
摘要: 对于给定的一个字符串s,请计算出字典序最大的s的子序列。 思路:因为要保证字典序最大,所以ans的开头得尽量大 def solve(s): n,ans,mi=len(s),'',ord('a')-1 for i in range(n-1,-1,-1): if ans=='' or mi<=ord(s 阅读全文
posted @ 2020-12-25 09:42 童年の波鞋 阅读(78) 评论(0) 推荐(0) 编辑
摘要: 思路:系数a≥0,所以f是一个单调递增函数;小根堆先存储k个序列的最小f值;另,k可能小于n,所以需要不断自增每个序列中的n来寻找更大一点的数(n=1,2,3,4...) import heapq """ 把n抽取出来,原式等价于 ((((((a7*n+a6)*n+a5)*n+a4*n)+a3)*n 阅读全文
posted @ 2020-12-24 09:48 童年の波鞋 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 给出一个括号序列s,允许你在s的开始和结尾处添加一定数量的左括号('[')或者右括号(']')使其变为一个合法的括号匹配序列。你能求出添加最少的括号之后的合法的括号匹配序列是什么吗? 思路:实时记录左括号的数量l,如果遇到右括号时,若左括号数量l为0,则证明需要在当前右括号前面增加一个左括号[ de 阅读全文
posted @ 2020-12-22 12:00 童年の波鞋 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 给定每个用户的对文章的喜爱值,对于多个查询,l,r,k代表一组查询,查询标号为l<=i<=r的用户中对这类文章喜好值为k的用户的个数 思路:直接遍历给定的查询区间再去统计数量肯定会超时,由于要查的喜爱值是固定的,直接用map<int,list>的结构存储喜爱值的用户标号,然后对于每一个喜爱值k都取m 阅读全文
posted @ 2020-12-21 11:44 童年の波鞋 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 给定13张牌,问加入1~9中的任意一张牌后,能否达成和牌(满足以下两个条件): 14张牌中有2张相同数字的牌,称为雀头。 除去上述2张牌,剩下12张牌可以组成4个顺子或刻子。顺子的意思是递增的连续3个数字牌(例如234,567等),刻子的意思是相同数字的3个数字牌(例如111,777) 思路:暴力删 阅读全文
posted @ 2020-12-21 10:47 童年の波鞋 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 给一个数组queries,queries[j]=[p, q, limit],你的任务是对于每个查询,判断是否存在从 p 到 q 的路径,且这条路径上的每一条边都 严格小于 limit。 2 ⇐ n ⇐ 105 1 ⇐ edgeList.length, queries.length ⇐ 105 思路: 阅读全文
posted @ 2020-12-20 16:20 童年の波鞋 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 从数组A中删除一个含有 若干不同元素 的子数组。删除子数组的 得分 就是子数组各元素之 和 。 返回 只删除一个 子数组可获得的 最大得分 。 思路:前缀和+滑动窗口 class Solution: def maximumUniqueSubarray(self, A: List[int]) -> i 阅读全文
posted @ 2020-12-20 11:59 童年の波鞋 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 开始你在下标 0 处。每一步,你最多可以往前跳 k 步。你的目标是到达数组最后一个位置(下标为 n - 1 ),你的 得分 为经过的所有数字之和。 请你返回你能得到的 最大得分 。 思路:单调队列维护当前位置前面最大k个位置的最大得分的下标(可O(1)取出) const int N=1e5+5; c 阅读全文
posted @ 2020-12-20 11:58 童年の波鞋 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 定义P中某点x,如果x满足P中任意点都不在x的右上方区域内,则称其为最大点。求出所有“最大的”点的集合。 思路:先约束好一维,在对另一位进行判断即可 def solve(): n=int(input()) A,ans=[],[] for i in range(n): x,y=map(int,inpu 阅读全文
posted @ 2020-12-18 11:50 童年の波鞋 阅读(89) 评论(0) 推荐(0) 编辑
摘要: 你可以走到箱子的上下左右任意一侧, 将箱子向另一侧推动。如下图将箱子向右推动一格。输出最少几步能够完成游戏 思路:记录人与箱子状态的bfs def bfs(n,m,g,start,box): step=0 q=[(start[0],start[1],box[0],box[1],0)] vis=[[[ 阅读全文
posted @ 2020-12-18 10:12 童年の波鞋 阅读(95) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 30 下一页