步骤一:PC端(建议使用chrome浏览器)复制下方链接。若手机端用手机扫描二维码,
文章作者: wweiyi
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 wweiyiのblog!
相关推荐
2021-11-19
【全程NOIP计划】初级数据结构1
【全程NOIP计划】初级数据结构1 在线:每次询问之后,立马可以得到查询结果 离线:知道所有需要查询的值,然后一次输出查询结果 STL中set的用法 用迭代器 并查集 可以支持一些不相交集合的合并和查询 我们可以树形结构来组织数据 同一个集合的元素组成一棵树 因为集合没有交,所以最终构建得到的是一个森林 将树的根节点作为集合的代表元 开始的时候为n个孤立的点 查询一个点所属集合 1234int get(int x){ return fa[x]=(x==fa[x]? x:get(fa[x]));} 这里做了一个路径压缩,使这颗树变得扁平,大大减小了查找的时间 合并 1234void merge(int x,int y){ fa[get(x)]=get(y);} 如果是启发式合并的话,是把较小的树插到较大的树 用处 1.可以做最小生成树 也就是kruskal算法 2.还可以用来判环 P3958 奶酪 思路 实际上处理一个上界,处理一个下界,然后判断上面和下面能不能连通就可以了非常简单 123456789101112131415161...
2021-11-19
【全程NOIP计划】动态规划及优化1
【全程NOIP计划】动态规划及优化1 LIS 非常经典,最长上升子序列 设计状态 以f[x]f[x]f[x]表示序列a中以axa_xax结尾的LIS长度 涉及转移 f[x]=maxi<x,ai≤ax(f[i]+1)f[x]=max_{i<x,a_i\le a_x}(f[i]+1)f[x]=maxi<x,ai≤ax(f[i]+1) DP的状态和转移 一个问题可以DP,是因为这个问题可以从小问题的解推出大问题的解 我们可以从初始状态的解,推出最终状态的解,从而解决问题 本质 首先我们把LIS的问题中的每个状态作为点,放在图上 我们知道f[1]=1f[1]=1f[1]=1,因为单个字符的LIS长度只有1,现在想知道f[4]f[4]f[4],这就需要转移来实现 如果状态x可以直接抵达y状态,我们就连上x→yx \rightarrow yx→y的有向边 如果我们按照上面的方式画图,我们就可以发现几个性质 1.DP的每一个状态对应着一个点 2.每种可能的转移方式,都对应着一条有向边 3.DP的求解顺序,等同于这张图的拓扑排序 4.必须是有向无环图DAG,否则无法找到...
2020-10-25
一些内容精致+讲解到位易懂的网站
OI WIKI 黄学长的博客 Codeforces镜像网站 BZOJ数据 LaTeX的使用 对拍教程 vector的使用 字符串匹配(hash算法) codeforces访问加速 线段树详解 校内OJ搭建 背包九讲 莫队详解 平面凸包详解 基环树 博客装饰教程 二分图匹配详解 ST表浅谈 可视化数据结构演示 树状数组详解 树状数组求逆序对 bitset使用指南 C++ goto的使用 树链剖分详解 dfs序与欧拉序 模拟退火算法 差分约束问题 网络流详解 氩洛谷背景样式 CSS学习 数学较全解 后缀自动机详解 线性基详解 图论画图网站 whk题库 各种Dp优化技巧 tuple详解
2020-10-24
模板
模板整理(持续整理中) 基础算法 二分 123456while(l<=r){ int mid=(l+r)/2; if(check(mid)) l=mid; else r=mid-1;} 快速排序 1234567891011121314151617void qsort(int l,int r)//应用二分思想{ int mid=a[(l+r)/2];//中间数 int i=l,j=r; do{ while(a[i]<mid) i++;//查找左半部分比中间数大的数 while(a[j]>mid) j--;//查找右半部分比中间数小的数 if(i<=j)//如果有一组不满足排序条件(左小右大)的数 { swap(a[i],a[j]);//交换 i++; j--; } }while(i<=j);//这里注意要有=...
2020-10-24
省选知识学习进度
(来自黄学长) 1.1 基本数据结构 数组 链表,双向链表 队列,单调队列,双端队列 栈,单调栈 1.2 中级数据结构 堆 并查集与带权并查集 hash 表 自然溢出 双hash 1.3 高级数据结构 树状数组 线段树,线段树合并 平衡树 Treap 随机平衡二叉树 Splay 伸展树 Scapegoat Tree 替罪羊树 块状数组,块状链表 5.* 树套树 线段树套线段树 线段树套平衡树 * 平衡树套线段树 6.可并堆 左偏树 *配对堆 *KDtree,*四分树 1.4 可持久化数据结构 可持久化线段树 主席树 可持久化平衡树 可持久化块状数组 1.5 字符串相关算法及数据结构 KMP AC 自动机 后缀数组 *后缀树 *后缀自动机 字典树 Trie manacher 1.6 图论相关 最小生成树 prim kruskal 最短路,次短路,K短路 spfa dijkstra floyd 图的连通 连通分量 割点,割边 网络流 最大流...
2021-03-30
NOI Online2021第一场游记
NOI Online2021第一场游记 0 准备 2021年3月27日,一个美妙的早上,我从我温暖的被子里滚了出来,走向了襄阳五中的大门,内心踌躇:这可能是我最后一次参加NOI Online了,但是不慌,因为此时学校俨然已经被封锁起来,变成了公务员考试的考场。我从旁边的宁静湖穿过,走了比平时多了大约一倍的路程直达我的竞赛场地——大成楼,有诗云: 大成楼里集大成,大成楼旁小成生,小小大大大小成,小小大大状元名 好不费力,我从一层的电梯起步坐到五层,然后从五层的楼梯爬到六层,这里就是我所在的机房了——只有我一个人的机房。 拿出钥匙,我将钥匙插进门锁中,前后倒腾了几下,门开了,里面散发出一股灰尘的味道,我知道,是我上周月考,没有进去,已经布满灰尘了。进门之后向右转,打开电闸,快到墙的时候,又及时来了一个急转弯,走到倒数第二排的电脑面前,放下书包,踱到窗旁,打开窗户,迎接这一天的新鲜空气。 电脑缓缓地开了,滴滴的声音和窗外公务员考试的广播声加大了比赛的真实感觉,让我身临其境, 时间一分一秒地过去,终于到了8:30这个时间,题目发下来了 1 提高组 T1 愤怒的小N 鸽 T2 积木小赛...
评论
公告
这里记录 AI 与开发工具、嵌入式实践、算法竞赛档案,以及偶尔的随笔与创作。
从专题开始阅读 →
从专题开始阅读 →
