01 2025 档案

摘要:[数位DP] 运用记忆化搜索来对每一位枚举, 一般需要枚举以下几种参数: id:枚举到第几位。 x:当前位是否与num[id]相等,即当前是否为上限。 zero:是否有前导0(前导0 签到题爆0) sum:其他题目需要的(如luogu P2602 [ZJOI2010] 数字计数就是求数量) 1. l 阅读全文
posted @ 2025-01-23 20:57 lbh123 阅读(4) 评论(0) 推荐(0) 编辑
摘要:[线段树] 本质为二叉树 用来区间查询,区间修改, 单点查询,单点修改 运用结构体存储。 struct node{ int sum,laze; }tree[N*4];//四倍空间 //建树 void build_tree(int id,int l,int r){ if(l==r){ tree[id] 阅读全文
posted @ 2025-01-20 20:57 lbh123 阅读(6) 评论(0) 推荐(0) 编辑
摘要:BFS及其优化 BFS可实现问题: [连通块] (DFS也行) [最短路] (DFS又行) [曼哈顿距离] (DFS好像大概也许行) 大概步骤: 1.起点入队列,打标记。 2.弹出队首进行操作。 3.按照题目要求加入队列新点并打标记。 例题: 1. accoders【一本通提高篇广搜的优化技巧】山峰 阅读全文
posted @ 2025-01-20 20:14 lbh123 阅读(6) 评论(0) 推荐(0) 编辑
摘要:最小生成树 [生成树] 从一个无向连通图中选取一些边使这张图是一颗树。 [最小生成树] 在生成树的基础上使边权和最小。 [Kruskal] 寻找满足条件的边 贪心,从未选取的边中选一条边权最小的边, 选完后不出环即可。 我们需要判断: 1.当前最小边权的边。 2.这条边所连接的两个点的连通性。 用并 阅读全文
posted @ 2025-01-17 20:57 lbh123 阅读(8) 评论(0) 推荐(0) 编辑
摘要:最短路 [floyd] 思考枚举 k 作为中转点来进行赋最小值, 原转移为 a[k][i][j]=min(a[k][i][j],a[k1][i][k1],a[k1][k1][j]); 经空间压缩后为 \(a[i][j]=min(a[i][j],a[i][k]+a[k] 阅读全文
posted @ 2025-01-17 20:51 lbh123 阅读(6) 评论(0) 推荐(0) 编辑
摘要:二分与三分(分治) [整数二分] 写法1(求最小值最大): int l=1,r=n; while(l<r){ // 答案可行区间 int mid=(l+r+1)/2;//加1修正 | | if(check(mid)){//mid成立,舍去左边。 L|______________m__________ 阅读全文
posted @ 2025-01-17 08:00 lbh123 阅读(5) 评论(0) 推荐(0) 编辑
摘要:DFS及其优化 [优化剪枝] 1.优化搜索顺序 先搜索节点少的分支,如果搜进来一个大分支而答案不在此分支就会浪费大量时间。 2.可行性剪枝 如果当前分支不可行就退出剪枝。 3.最优性剪枝 如果当前搜索到的答案已经比搜过的答案差了,就退出当前剪枝。 即如果此分支确定不是最优解(差于已有解)就 retu 阅读全文
posted @ 2025-01-17 07:58 lbh123 阅读(11) 评论(0) 推荐(1) 编辑
摘要:贪心算法例题及思路 [区间选点] Q(1):n个区间,每个区间至少一个点,问最少几个点。 [最大不相交区间数量] 衍生Q:n个区间,选取最多无交集的区间。 A(1):按照右端点排序,将点选在右端点。 衍生Q例题 accoders的【一本通提高篇贪心】 活动安排 2032 题意: 求最多无交集区间。 阅读全文
posted @ 2025-01-16 19:04 lbh123 阅读(4) 评论(0) 推荐(0) 编辑
摘要:魔法 题目描述 cjwssb 知道是误会之后,跟你道了歉。你为了逗笑他,准备和他一起开始魔法。不过你的时间不多了,但是更惨的是你还需要完成 n 个魔法任务。假设你当前的时间为 T,每个任务需要有一定的限制 ti 表示只有当你的 T 严格大于 ti 时你才能 阅读全文
posted @ 2025-01-16 18:54 lbh123 阅读(13) 评论(0) 推荐(0) 编辑

< 2025年2月 >
26 27 28 29 30 31 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 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示