XOR
Ansible - 基础
自动化运维工具,可以批量远程其他主机并进行管理操作 什么是 Ansible Ansible首次发布于2012年,作者:Michael DeHaan,同时也是Cobbler的作者,Ansible于2015年被RedHat收购; Ansible是一款自动化运维工具,基于Python开发。可以实现 批量系 ......
在 kubernetes 中自定义名字解析,通过名称访问局域网主机上的服务
在很多情况下,我们希望 kubernetes 中的软件通过名称来访问已经安装在物理服务器上的传统服务,而不是 IP 地址。有几个方法: 修改 kubernetes 的 DNS 解析,使用局域网 DNS 服务器作为上游解析器 如果局域网没有 DNS 服务器,可以在 kubernetes 中注册物理服务 ......
二分答案杂题+题单
二分答案杂题 二分答案适用于答案具有单调性/包含性的题,一般时间复杂度为\(O(nlogn)\),最重要的是找准二分答案的对象,以及check的优化(包括但不限于差分、前缀和、单调队列)。 目前正确性可以保证并且可以覆盖到整个区间不出现死循环的二分只有两种: 1.\(mid=(l+r)/2\),\( ......
CF1896D Ones and Twos 题解
来自机房大佬 FFT 的简单解法。 思路 首先有个结论:如果 \(a\) 中存在一个子串的和为 \(x\) (\(x>2\)),那么也就一定存在一个子串之和为 \(x-2\)。怎么证明?其实和为 \(x\) 的子串有 \(3\) 种情况: \(\text{1}\dots \text{1}\) 两边都 ......
P9194 [USACO23OPEN] Triples of Cows P 题解
直接建边边数过多,不好处理。我们可以考虑建一些虚点,让 \(u_i\) 和 \(n+i\) 连边,\(v_i\) 和 \(n+i\) 连边。设这些新连的点为白点,与白点有连边的点在原图中一定相连,并且一定是一棵树。删除操作相当于把 \(u\) 的子白点连到他的父白点上,使用并查集维护即可。 这时再考 ......
CF1917D Yet Another Inversions Problem 题解
官方题解。 思路 首先可以把 \(a\) 数组分成 \(n\) 块,每块都是长为 \(k\) 的 \(q\) 数组。于是我们可以把答案拆成两部分计算:块内的贡献和块外的贡献。对于块内,\(p_i\) 都是一样的,因此可以直接消去,计算的实际上就是 \(q\) 序列的逆序对数,把这个值 \(\time ......
可持久化trie树
正常的 trie 树能解决一些字符串问题,\(0/1\) trie 能解决最大异或和问题。但是如果每次询问是针对一个区间的,那么普通 trie 就不好做了,此时就需要可持久化 trie 树。 类似可持久化线段树,对于每个版本新建一个 \(root\) (相当于每个前缀建),在插入时该继承的继承,改修 ......
P6088 [JSOI2015] 字符串树 题解
思路 每次询问 \(u,v\) 的简单路径上有多少个字符串以 \(s\) 为前缀,不难想到用 trie 树去维护。而普通的 trie 只能查询所有字符串中产生的答案,对于这类区间询问,就要用到可持久化 trie 树了。不会右转可持久化 trie 树模板题。 \(u,v\) 的简单路径上编号不连续,非 ......
CSP 2023 游记
DAY -? 初赛J91,S51,以为过不了了,于是准备摆烂放弃。 DAY -?? S补录过了!!! DAY 0 上午考了最后一场模拟赛,竟然是普转提。T1随便进制转换。T2拼三角形, \(n\) 只有 \(12\),感觉可以贪心,随便排了个序+二分过掉小样例,但是没有大样例,于是开T3。突然感觉不 ......
P9744 「KDOI-06-S」消除序列
CSP前的晚自习本来想打板子的,但是没有做题的欲望,就来写题解了。 小清新 dp。 思路 先观察每一个操作,发现操作一最特殊,思考下它有什么性质。如果我们进行了一次以上的操作一,一定不是最优的。因为每次都会把前 \(i\) 个数都变成零,重复之后就会覆盖原来的操作,回到第一次操作的初始状态,这样前 ......
tarjan
link @LHTCFLS :https://www.luogu.com.cn/blog/436107/tarjan-xue-xi-bi-ji 强连通分量 \(low\) 为 \(x\) 最多经过一条返祖边能走到栈中的节点的最小 \(dfn\) 为多少。 \(low_x=dfn_x\) 时,对于一个 ......
P6502 [COCI2010-2011#3] ZNANSTVENIK
其实直接模拟就好了。 因为要从第一行开始依次往下删,所以从小到大枚举行,看这行删完是否合法。如果不合法了,就输出答案并结束程序。然后我们就要思考如何判断当前矩阵是否合法。 一个暴力的想法是把下面的每一列字符串都表示出来,看他们之中有没有不同的。但是这样做是 \(\mathcal{O(n^2m)}\) ......
P9754 [CSP-S 2023] 结构体 题解
首先,我们需要想清楚要维护哪些信息,把每一种类型(包括基本类型)用结构体维护,里面存: 类型的对齐规则 占用长度 元素个数 每个元素的名字、起始位置、类型 元素名到编号的映射 struct node{ int dq;//对齐规则 ll sz;//长度 int num;//data numbers s ......
P6370 [COCI2006-2007#6] KAMEN 题解
题目 神奇模拟题。最直接的做法就是每个石头暴力向下滚,有 \(60\) 分。但是大样例跑了 \(15s\)。稍微观察一下,会发现很多次循环都是在重复向下走到一格空位上,于是考虑优化:用 set 维护每一列的那些位置有障碍(包括石头),每次直接 lower_bound 跳到下一个位置,会快很多,大样例 ......
[ARC105E] Keep Graph Disconnected 题解
赛时冲了两个多小时没冲出来,想得断断续续,导致没想到如何处理奇偶。 思路 根据限制条件一,可以知道最后的图一定是两个连通块,其中一块包含 \(1\),另一块包含 \(n\)。因为此时再想连边就必须连通两个块,使其不合法了。 每次操作都是新增一条边,那么到最后的边数是多少呢?假设其中一个连通块有 \( ......
gym 102452 Constructing Ranches 题解
题目 题意 给定一颗树,每个点有点权。求有多少对点对 \((x,y)\) 满足 \(x<y\) 且以 \(x\) 到 \(y\) 的简单路径上的所有点的点权作为边长,能围成一个凸多边形。 \(1 \leq n \leq 10^5\),\(1 \leq a_i \leq 10^9\)。 思路 遇到这种 ......
[ABC329E] Stamp 题解
正难则反。 直接往上覆盖不好做,那么可以考虑把字符从 \(S\) 上往下删。删的过程就是在 \(S\) 中找 \(T\) 并把他们变成 #。如果 \(S\) 中有字符为 #,那我们可以把它看成任意字符,因为向上贴的过程中有重复覆盖的情况,在删的时候我们并不知道他是否重复了,所以当成任意字符来看即可( ......
CF1527D MEX Tree 题解
思路 如果一条路径的 \(\text {mex} = k\),那么 \(0 \sim k-1\) 这些点一定在路径中出现过,并且一定在一条链上。如果不在一条链上,那么就不满足简单路径这一条件了。因此我们在从小到大加点的过程中如果发现一个点不在已求出的链上,那么比这个点编号大的 \(k\) 答案一定都 ......
CF1536F Omkar and Akmar 题解
思路 首先最后的局面在两两字母间一定不会多于 \(1\) 个空格。考虑反证,假设有两个空格,那么有以下两种情况:\(\text{A}\_\_ \text{B}\),\(\text{A}\_\_ \text{A}\),也就是两边的字母不同,相同。对于第一种,在任意一个空格都可以填一个与他相邻字符不同的 ......
[ABC331F] Palindrome Query 题解
思路 判断一个字符串是否是回文串,可以从它的本质出发:正着读和倒着读是一样的。快速判断它正着和反着是否一样,用字符串哈希即可。又因为涉及单点修改,区间查询,那么使用线段树维护这两个值就行了。 这里讲一下如何 pushup。以正着的哈希值为例:我们要更新 \(p\) 这个点的 \(hash\) 值,已 ......
Hadoop(3.3.4)-HDFS操作
Apache Hadoop 3.3.4 – Overview 01.appendToFile hadoop fs -appendToFile localfile /user/hadoop/hadoopfile hadoop fs -appendToFile localfile1 localfile2 ......
Hadoop之mapreduce参数大全-1
1.设置Map/Reduce任务允许使用的最大虚拟内存大小 mapred.task.maxvmem是MapReduce的一个配置参数,用于指定每个Map/Reduce任务允许使用的最大虚拟内存大小(以字节为单位)。如果一个任务使用的虚拟内存超过了此参数指定的值,则任务会被认为是失败的,并且MapRe ......
Hadoop之mapreduce参数大全-2
26.指定在Reduce任务在shuffle阶段的网络重试之间的最大延迟时间 mapreduce.reduce.shuffle.retry-delay.max.ms是Apache Hadoop MapReduce任务配置中的一个属性,用于指定在Reduce任务在shuffle阶段的网络重试之间的最大 ......
CF1547C题解
思路 题意这里就不讲了,直接进入正题。 贪心。 首先我们知道要想尽可能的让每一次操作都合法就得使 \(k\) 最大化,那么要使 \(k\) 最大就得尽可能的选择 \(0\) 操作,所以贪心策略就出来了:优先选择 \(0\) 操作,\(A,B\) 序列那个有 \(0\) 就选哪个合并。如果两个序列当前 ......
P8284
思路 在比赛的时候,第一眼看过去就觉得是道诈骗题(实际上确实是诈骗题),花了十分钟写完,一交,90分。。。调了半天也没调出来,最后仔细审了一遍题豁然开朗,现在,就让我们一起来审一审题。 对于每个 \(i\;(1 \leq i \leq n-1)\),满足\(a_i=\gcd(a_{i+1},a_{i ......
CF1673A题解
题目大意 A(Alice)和B (Bob)有一个字符串 \(\texttt s\)(所有字符都是小写字母),他们在玩一个游戏:对于这个字符串 \(\texttt s\),A可以删除其中长度为偶数的一串子串,B则可以删除其中长度为奇数的字串(也可以选择不删)。每次删除都能获得相应的分数,即将删除字串中 ......
P3464 [POI2007] WAG-Quaternary Balance 题解
数位DP。 首先分析下题目,将 \(n\) 表示成一些 \(4^k\) 的数之和/差的形式 ,就可以理解为一个天平,\(n\) 放在左边,可以选一些数值为 \(4\) 的幂的砝码,放左/右都行,在让天平平衡,求方案数。 \(4^k\) 很容易联想到四进制,于是考虑把 \(n\) 转换为四进制后进行数 ......
CF1863E Speedrun
CF1863E 参考这篇博客,本题解作为我的学习笔记。 思路 首先观察到提上说的依赖关系,容易联想到建出一张有向无环图。因为 \(a_i\) 要比 \(b_i\) 先完成,所以从 \(a_i\) 向 \(b_i\) 连一条边。而任务必须从入度为零的点开始依次往下做,因此想到拓扑排序(但题目给的就是拓 ......
loj 数列分块
1 操作涉及区间加法,单点查值。 对于每个块维护一个 \(ad\) 数组表示这个块每次修改增加的值的和,在修改 \(l\) ~ \(r\) 区间时,如果 \(l,r\) 在同一个块,那直接暴力修改。否则对于 \(l\) ~ \(R_{bel_l}\) 和 \(L_{bel_r}\) ~ \(r\) ......