chenfy27的刷题记录

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

2025年1月14日 #

cf566D Restructing Company

摘要: 给定数组a[n],初始时a[i]=i,有q次操作: 操作1、1 x y,表示合并x和y 操作2、2 x y,表示合并区间[x,y] 操作3、3 x y,表示询问x和y是否在同一个集合 1<=n<=2E5; 1<=q<=5E5 分析:可以用set+并查集来做,这里用区间并查集来做,在普通并查集的基础上 阅读全文

posted @ 2025-01-14 21:27 chenfy27 阅读(1) 评论(0) 推荐(0) 编辑

2025年1月12日 #

背包九讲练习题

摘要: 01背包 有N种物品和一个容量为V的背包,每种物品只有1个,第i种物品的体积为v[i],价值为w[i]。问将哪些物品装入背包,可使总体积不超过背包容量,且总价值最大,输出最大值。 0<N,V<=1000; 0<v[i],w[i]<=1000 分析:标准01背包,每样物品按选和不选进行转移,时间复杂度 阅读全文

posted @ 2025-01-12 21:27 chenfy27 阅读(5) 评论(0) 推荐(0) 编辑

leetcode2902 和带限制的子多重集合的数目

摘要: 给定数组nums[n]和整数l,r,nums中的元素可能会重复,要求从nums中选择若干个元素,其元素和在[l,r]内,有多少种不同方案,结果对1E9+7取模。注:空集合的结果为0,相等的元素之间没有区别。 1<=n<=2E4; 0<=nums[i]<=2E4; sum(nums[i])<=2E4; 阅读全文

posted @ 2025-01-12 19:48 chenfy27 阅读(6) 评论(0) 推荐(0) 编辑

leetcode3333 找到初始输入字符串II

摘要: 用键盘输入字符时,可能因为在一个键上停留太久,导致同一个字符被输入多次。给定word表示最终显示的字符串,以及整数k,表示希望输入字符串的最少长度,求希望输入串的总方案数,对1E9+7取模。 1<=|word|<=5E5; 1<=k<=2000; word只包含小写字母 分析: 1、假设最终串的长度 阅读全文

posted @ 2025-01-12 17:02 chenfy27 阅读(5) 评论(0) 推荐(0) 编辑

leetcode2585 获得分数的方法数

摘要: 考试中有n种类型的题目,给定整数target和二维数组types,其中types[i]=[count[i],marks[i]],表示第i种类型的题目有count[i]道,每道分值为marks[i]。求在考试中恰好得到target分的方法数,答案对1E9+7取模。注意,同类型题目无法区分。 1<=ta 阅读全文

posted @ 2025-01-12 15:25 chenfy27 阅读(4) 评论(0) 推荐(0) 编辑

leetcode115 不同的子序列

摘要: 给定两个字符串s和t,统计并返回在s的子序列中t出现的个数,结果对1E9+7取模。 1<=|s|,|t|<=1000 分析:判断两字符串的最后一个字符:如果相同,则可以选择匹配或者不匹配;如果不同,则只能选择不匹配。初始条件:t为空时答案为1。 mint dp[1005][1005]; class 阅读全文

posted @ 2025-01-12 15:21 chenfy27 阅读(3) 评论(0) 推荐(0) 编辑

2024年12月29日 #

leetcode1803 统计异或值在范围内的数对有多少

摘要: 给定数组nums[n]和两个整数low与high,问有多少对(i,j)满足 0<=i<j<n,并且low <= (nums[i] ^ nums[j]) <= high。 1<=n<=2E4; 1<=nums[i]<=2E4; 1<=low<=high<=2E4 分析: 1、把区分问题拆分为两部分,记 阅读全文

posted @ 2024-12-29 19:37 chenfy27 阅读(3) 评论(0) 推荐(0) 编辑

leetcode1938 查询最大基因差

摘要: 给定一棵n个节点的有根树,节点i的父节点为parents[i],根节点的父节点为-1,节点的基因值等于自身编号。有m个询问,queries[i]=[node[i],val[i]],返回从根节点到node[i]的路径上所有节点基因值与val[i]的异或最大值。 2<=n<=1E5; 1<=m<=3E4 阅读全文

posted @ 2024-12-29 16:40 chenfy27 阅读(3) 评论(0) 推荐(0) 编辑

leetcode2935 找出强数对的最大异或值II

摘要: 给定数组nums[n],如果一对整数x和y满足|x-y|<=min(x,y),则称其为强数对。需要从nums[n]中选出一个强数对,并且异或结果最大。 1<=n<=5E4; 1<=nums[i]<2^20 分析:trie+双指针。不妨设x<=y,对|x-y|<=min(x,y)变形得:x<=y<=2 阅读全文

posted @ 2024-12-29 15:58 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑

leetcode1707 与数组中元素的最大异或值

摘要: 给定数组nums[n]和查询数组queries[m],其中queries[i]=[xi,mi],第i个查询表示nums[n]中不超过mi的所有元素与xi异或的最大值。 1<=n,m<=1E5; 0<=nums[i],xi,mi<=1E9 分析:01trie+离线。将询问按mi从小到大排序,将nums 阅读全文

posted @ 2024-12-29 15:29 chenfy27 阅读(2) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示