10 2023 档案

摘要:洛谷P3745题目涉及学生期望成绩公布时间和学科公布成绩时间,目标是最小化等待产生的不愉快度。操作包括调整成绩发布时间,考虑两种操作方式及其对不愉快度的影响。通过排序、前缀和三分等,最终输出最小不愉快度。 阅读全文
posted @ 2023-10-31 20:03 superl61 阅读(98) 评论(1) 推荐(0) 编辑
摘要:线段树专题 (该笔记持续更新中...) 一、基本操作 1.单点修改/查询: 2.区间修改/查询: 需要用到 lazy_tag 技术,即每次修改不会立刻修改涉及到的每一段区间,而是等到下一次修改要用到或者是要查询该区间时再更新,这样可以将每次修改和查询的复杂度控制在 O(log2N) 3.总 阅读全文
posted @ 2023-10-31 15:35 superl61 阅读(10) 评论(0) 推荐(0) 编辑
摘要:题解:「NOIP2022 提高组」种花 题目大意:给定一个 n×m 的01矩阵,0表示可以种花,1表示土坑(无法种花),现在要在图上种出一个C型或F型(C,F横着的两条线的长度都可以不同,但一定是面向右边的),现在问你种C和F分别有多少种方案(除了这个形状外不能在任何地方种花) 阅读全文
posted @ 2023-10-29 18:49 superl61 阅读(197) 评论(0) 推荐(0) 编辑
摘要:可持久化线段树 Luogu P3834 【模板】可持久化线段树 2 特点:支持查询线段树的历史版本 实现:每次修改只涉及log2N个点,所以每次修改就先复制上一个状态,然后修改涉及到的一条链即可,时间复杂度O(Nlog2N)(修改因为要离散化,是双log;查询单log) 注意要保 阅读全文
posted @ 2023-10-25 19:13 superl61 阅读(10) 评论(0) 推荐(0) 编辑
摘要:树的直径、重心、中心 一、树的直径 我们将一棵树 T=(V,E) 的直径定义为 max(u,v)(u,vV),即树中所有最短路径距离的最大值即为树的直径。 求法: 1)树形dp 定义d1为从节点u到其子树中节点距离的最大值,d2为次大值,则\(diameter=max(d1+d2)\ 阅读全文
posted @ 2023-10-20 10:20 superl61 阅读(212) 评论(1) 推荐(3) 编辑
摘要:二分图 前情提要:今日速查打二分图最大匹配,发现自己的匈牙利算法《学的非常好》,于是一怒之下写了这篇笔记 1.什么是二分图? 若一张无向图GN个节点可分成AB两个不相交的非空集合,并且同一集合内的点之间没有边相连,那称该图为二分图。 性质:二分图中不存在奇环(一个点想回到 阅读全文
posted @ 2023-10-18 19:59 superl61 阅读(5) 评论(0) 推荐(0) 编辑
摘要:[Error] invalid types 'int[int]' for array subscript 这通常是数组的问题,我目前总结出3种可能: 数组变量名不一致,或者没定义,比如你定义了一个ans数组,但是你在用的时候误写成了a数组(oj应该爆CE) 数组空间不够,比如你要访问a[6],可是你 阅读全文
posted @ 2023-10-18 09:28 superl61 阅读(23) 评论(0) 推荐(0) 编辑
摘要:Upd:2024/7/23 转载自: C++标准cout输出精度解析 double和float的区别 cout保留两位小数位_cout输出小数点后两位-CSDN博客 1.double是双精度浮点数,内存占8个字节,有效数字16位,表示范围是-1.79E+ 308~1.79E+308。 float是单 阅读全文
posted @ 2023-10-15 14:45 superl61 阅读(74) 评论(2) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2023-10-12 16:47 superl61 阅读(8) 评论(0) 推荐(0) 编辑
摘要:Trie树练习题 T1 「一本通 2.3 例 2」The XOR Largest Pair 在给定的 N 个整数A1,A2,...AN中选出两个进行异或运算,得到的结果最大是多少? 数据范围 对于 100%的数据,\(1 \leq N \leq 10^5,0 \leq A_i 阅读全文
posted @ 2023-10-12 14:42 superl61 阅读(18) 评论(1) 推荐(1) 编辑
摘要:常见return错误 3221225477 (0xC0000005): 访问越界,一般是读或写了野指针指向的内存。 3221225725 (0xC00000FD): 堆栈溢出,一般是无穷递归造成的。 3221225620 (0xC0000094): 除0错误,一般发生在整型数据除了0的时候。 阅读全文
posted @ 2023-10-11 07:30 superl61 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题解: CF768D Jon and Orbs 一句话题面:有k种不同的物品,每天等概率任取一种(不一定是新的种类)。q组询问,每组给出一个p,问取完这k件物品的概率不小于p2000的最小天数 不用说,肯定是概率DP了 1.定义 :fi,j 表示前i阅读全文
posted @ 2023-10-10 22:09 superl61 阅读(10) 评论(0) 推荐(0) 编辑
摘要:题解:洛谷P1119 灾后重建 题目传送门 前言:没有掌握floyed求最短路的精髓是每次增加选一个中转点,导致写了2h才勉强卡过 法1:最暴力的想法就是开个三维数组把前i个点的dis状态全部存下来,跑N次floyed,当然由于每次点数时递增的,所以实际复杂度远远小于O(N^4),算了下大概200个 阅读全文
posted @ 2023-10-08 11:45 superl61 阅读(10) 评论(0) 推荐(0) 编辑
摘要: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 阅读(1) 评论(0) 推荐(0) 编辑
摘要:反思 树上LIS 题目描述 给你一棵 n个节点的树,树的每个节点上都有一个值 a[i] 。 现在要您求出从 1 号点到 i 号点的最短路径上最长上升子序列的长度。 就是单调栈优化+dfs回溯 对比两段代码的dfs部分: //AC Code inline void dfs(int u,int f){ 阅读全文
posted @ 2023-10-06 21:12 superl61 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目背景:你有一个容量为 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 阅读(3) 评论(0) 推荐(0) 编辑
摘要:单调队列 LCA√ 二叉堆√ ST表 √ 并查集、带权并查集 树的直径、树的重心 树状数组、线段树(见线段树专题) 树上倍增 树上分治 哈希(整数哈希+字符哈希+树哈希) 树链剖分:重链剖分+长链剖分 启发式合并 平衡树(无旋Treap) 1.带权并查集 ·怎样理解“带权”:即在维护点之间的集合关系 阅读全文
posted @ 2023-10-05 17:07 superl61 阅读(18) 评论(2) 推荐(0) 编辑
摘要:线段树的基本操作: 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 阅读(10) 评论(0) 推荐(0) 编辑

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