会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
superl61
博客园
首页
新随笔
联系
订阅
管理
上一页
1
···
8
9
10
11
12
2023年10月8日
题解:洛谷P1119 灾后重建
摘要: 题解:洛谷P1119 灾后重建 题目传送门 前言:没有掌握floyed求最短路的精髓是每次增加选一个中转点,导致写了2h才勉强卡过 法1:最暴力的想法就是开个三维数组把前i个点的dis状态全部存下来,跑N次floyed,当然由于每次点数时递增的,所以实际复杂度远远小于O(N^4),算了下大概200个
阅读全文
posted @ 2023-10-08 11:45 superl61
阅读(34)
评论(0)
推荐(0)
2023年10月7日
Johnson全源最短路:负权化正权,最后减去势能差
摘要: Johnson全源最短路:负权化正权,最后减去势能差 (1)建虚点0,add(0,i,0),跑st=0的单源最短路hi (2)e[i].w+=h[u]-h[v] Q:为何这样不会得到错误答案? A:[ 最短路 - OI Wiki ]() (3)O(N^2*logN)跑n次dijk Code:
阅读全文
posted @ 2023-10-07 20:34 superl61
阅读(22)
评论(0)
推荐(0)
2023年10月6日
反思---树上LIS
摘要: 反思 树上LIS 题目描述 给你一棵 n个节点的树,树的每个节点上都有一个值 a[i] 。 现在要您求出从 1 号点到 i 号点的最短路径上最长上升子序列的长度。 就是单调栈优化+dfs回溯 对比两段代码的dfs部分: //AC Code inline void dfs(int u,int f){
阅读全文
posted @ 2023-10-06 21:12 superl61
阅读(64)
评论(0)
推荐(0)
背包DP
摘要: 题目背景:你有一个容量为 M的背包,有N个物品,每个物品的重量和价值分别为w[i]和c[i],现在选一些物品放入这个背包使装入的价值最大 1. 01背包(每件物品只有1件):倒序枚举重量,O(N^2) E(i,n){ cin>>w>>c; for(int j=m;j>=w;--j) f[j]=max
阅读全文
posted @ 2023-10-06 19:17 superl61
阅读(20)
评论(0)
推荐(0)
2023年10月5日
数据结构
摘要: 单调队列 LCA√ 二叉堆√ ST表 √ 并查集、带权并查集 树的直径、树的重心 树状数组、线段树(见线段树专题) 树上倍增 树上分治 哈希(整数哈希+字符哈希+树哈希) 树链剖分:重链剖分+长链剖分 启发式合并 平衡树(无旋Treap) 1.带权并查集 ·怎样理解“带权”:即在维护点之间的集合关系
阅读全文
posted @ 2023-10-05 17:07 superl61
阅读(45)
评论(2)
推荐(0)
2023年10月3日
线段树入门
摘要: 线段树的基本操作: 1.单点修改+区间查 #include<bits/stdc++.h> #define lson L,(L+R)/2,p*2 #define rson (L+R)/2+1,R,p*2+1 #define E(i,n) for(int i=1;i<=n;++i) #define F(
阅读全文
posted @ 2023-10-03 11:57 superl61
阅读(28)
评论(0)
推荐(0)
上一页
1
···
8
9
10
11
12
公告