10 2020 档案
摘要:一道有意思的题答构造题。题目是要你卡掉一个算法,给另一个算法过。前 6 个点是最短路的三种解法,后面 2 个点是一个染色问题。 最短路部分 一些需要了解的东西: FloydWarshall 就是 ,和边无关。 ModifiedDijkstra 堆优化的 Dijkstra,正权图里
阅读全文
摘要:一个一个加球。 对于每个局面,把所有加和为完全平方数的球对先拆点,再连边。 拆点就是为了变成二分图。 根据二分图相关定理:最小路径覆盖数=总点数-最大匹配数。计算出每个局面的最大匹配数,然后得出最小路径覆盖。和 比较,然后输出就可以了。 怎么看都比网络流简单。 #include<bits
阅读全文
摘要:这种题是经典的二分图套路题,做法也非常经典。 对于在棋盘上的和一行、一列有关的题目,应当把每行、每列作为二分图上的点跑最大匹配,就是把每行和每列匹配起来。 这道题存在“硬石头”的情况,我们应当换个角度。考虑“行段”和“列段”。一个行段即在同一行的连续的没有硬石头的段,列段同理。显然应当满足每个行段和
阅读全文
摘要:对于这类和全排列有关的 dp 题,我们第一时间应该想到的套路是用 表示从 到 的全排列,存在 个逆序对的情况数。和这题类似的题是 P2401 不等数列。 然后这题的转移也比较容易,只要枚举一下第 个数插入的位置是哪个,用 \(i-1
阅读全文
摘要:莫比乌斯反演 一、线性筛 void init() { v[1]=mu[1]=phi[1]=1; int cnt=0; for (int i=2;i<=MAXN;++i) { if (!v[i]) p[++cnt]=i,mu[i]=-1,phi[i]=i-1; for (int j=1;j<=cnt&
阅读全文
摘要:奇怪的搜索技巧:优化搜索 零、bfs有关 双端队列bfs 解决问题:边权只有0与1的最短路 时间: 算法的整体框架与一般的广搜类似,只是在每个节点沿分支拓展时稍作改变。如果这条分支边权为0,则从队首入队,否则从队尾入队。这样我们能保证,任意时刻广搜队列中节点对应的距离值都有“两端性”
阅读全文
摘要:离线分治:整体二分与CDQ分治 这两个算法都是离线的分治算法。其中CDQ分治是基于时间的分治算法。整体二分是基于值域的分治算法。先讲讲整体二分吧。 我们拿[ZJOI2013]K大数查询作为例子。 一、原理:将所有的修改和查询操作离线存下来。每次二分所有修改和询问操作,分成两部分解决。 二、每个子问题
阅读全文
摘要:广度优先搜索(水的一波~) 每次交换数组里连续两个数 找到第一个合法答案时不要停,继续 找到第二个时输出就好了 上代码 #include<bits/stdc++.h> using namespace std; int n,f[7]; bool flag;//flag表示是否找到了第一个合法答案 st
阅读全文
摘要:这是一篇早期题解,当时不会 请见谅。 因为我实在太蒻,写的有点啰嗦了,大佬请见谅谢谢 Part1 前置知识 1.异或运算 2.前缀和 3.莫队 Part2 转化题意 异或是一个很神奇的运算 当然对于前缀和是同样适用的 因此,很容易想到,维护一个前缀和数组sum sum[i]表示
阅读全文
摘要:这是一道挺好的dp题,我的方法会理解起来稍微简单点。 题目大意就不赘述了,我们直接考虑状态。 令表示选组,组[],组()且深度为的组合有几种。但是我们发现这样对于S=AB的状态转移是很难实现的。因为AB的深度都不知道,需要依次枚举。 我们可以考虑
阅读全文
摘要:Day1 进考场。开题。 密码一次对。 T1看了一眼。sb类型的模拟。我用了递归(二分当然也可)5min切了(虽然结束后才后悔) 剩下的时间基本在乱搞T2.想了半天只打了个n2的算法。一直在搞链的15分,推式子就是推不出来。看来还是我太菜了啊 T3还是花了大约20min时间打了个暴力的。10pts
阅读全文
摘要:计算机科学 计算机发展史 第一代电子管计算机(1946-1958) 第二代晶体管计算机 (1959-1964) 第三代集成电路计算机 (1965-1970) 第四代超大规模电路计算机 (1971至今) 计算机名人名士 申农(克劳德·艾尔伍·申农 美国人)被称为“数字时代之父”,第一次提出了 bit(
阅读全文
摘要:先说点闲话。考场上我只有大概半小时时间做题目,A了前两题后大概就五分钟在这题,乱骗 5 分就被叫走去上物理课去了。主要原因是我觉得以我的水平是完全能A掉这题的,但在考场上因为上课没时间,感到很遗憾,所以就有了这篇题解。 我讲讲我的思路。我们看到这个“旋转180度”很恶心,仔细想后就会发现左上角和右下
阅读全文
摘要:这题是一道小思维题,放在 C 的话难度还是比较低的。 我看有些题解只给了做法没有给证明,所以来说一下。 题意是说如果两个数最大公约数是序列最小值就可以交换。问最小交换次数使得单调不下降。 先给结论:我们先对 数组排序,得到最终数列。考虑每个数,如果这个数不等于最终数列的数并且不能被数列最
阅读全文
摘要:一整棵树的答案很显然是一样的,所以我们可以考虑并查集维护。 我们可以用 表示以 为根的子树大小。注意这里,如果 已经是一棵树上的节点,那么就不用维护了。这个显然可以维护:在合并的时候相加即可。 再用 表示以 为根的答案。考
阅读全文
摘要:二分图判定模板题(不知道为什么蓝)。 如果没有同性恋,那么很显然是一张二分图,否则不是。那么只要判定这张图是不是二分图即可。 一个图是二分图,当且仅当图中没有奇环。所以黑白染色即可。 多测记得清空。 #include<bits/stdc++.h> using namespace std; int T
阅读全文
摘要:听说这道题在赛时难倒了好多神仙。其实这只是一个暴力枚举。 首先肯定不能直接贪心做,如果对于某个人去最优的方案,第二个人就不一定最优了。 注意到 值很小。所以可以考虑枚举第一个人拿了多少把剑,剩余的肯定尽可能拿战斧。第二个人就可以贪心拿重量小的武器知道拿光,然后拿另外一个。 #incl
阅读全文
摘要:这题其实重题了,但是我没有发现。 考虑怎么弄掉一个区间。要么用操作 把它们一次切光,要么用操作 把它们切到一个为 ,再递归下去。 由于区间不重复,所以不用记忆化,直接做就可以了。 #include<bits/stdc++.h> using namespace std; int
阅读全文
摘要:感觉这道题好像出的水了点,像我这种对期望一窍不通的菜鸡也可以推出来。我的思路好像和大家不太一样(更简单一点吧)……但是好歹过了,大家可以参考一下。 我们设要通过第 个点需要的期望步数为 。那么我们可以根据定义推出 的表达式: \(E(x)=\dfrac{
阅读全文
摘要:一个奇怪的做法。先算出两个人到达每个标志用的时间,然后枚举所有两个相邻标志之间,检查两车是否在此之间相遇。如果找到了,计算出时间就可以了。 注意一下精度。 #include<bits/stdc++.h> using namespace std; int n,l; int a[100005]; lon
阅读全文
摘要:根据题意,对于每个强盗和每盏灯的关系,我们列出 个条件,第 个条件是满足 或 。我们列出所有条件,按 排个序,枚举一下可以满足哪几个条件,然后更新答案就可以了。 #include<bits/stdc++.h> usin
阅读全文
摘要:这题有的唯一的题解是尺取法做的,其实这题也可以简单地二分查找。(然而其实不比尺取法实现容易) 先说明,洛谷题面里翻译有误:两两工资差不超过d 应为 工资差值小于d。 两两的差其实转化为最大和最小的差。那么我们先对所有人按工资排序,然后枚举最小的人是谁,在他工资上加 ,然后找到小于这个值的人
阅读全文
摘要:贪心地想,肯定是给询问多的位置更大的数。所以先把数排序,对于每个问题差分一下,最后求前缀和,得到每个位置的询问次数。再把询问次数排序,一一对应即可。 #include<bits/stdc++.h> using namespace std; int n,m; long long a[200005];
阅读全文
摘要:单调性优化:单调栈与单调队列 一、单调栈 单调栈,就是要维护一个栈,单调递增或递减。一般地,放入元素时,如果栈顶的元素不符合单调递增(或递减),那就把它弹出,再查栈顶。直到符合或栈空了,再把元素放入。 适用于快速求每个数两侧比它大(或小)的数的位置。 例题-柱状图中最大的矩形 算法 ·其实很简单 ·
阅读全文
摘要:这题的加强版的我们 PJ 模拟赛的 T4,个人感觉还有点意思的。 先把题目转化一下,就是每个询问给你一个 值和 值,把所有小于 的边都删掉,然后从 能走到几个节点。 可以离线,所以选择离线。把问题按 从大到小排序,把边按权值从大到小排序。然
阅读全文
摘要:每次选择一个 的矩形,显然对于 这个点,只有唯一的矩形选择。那么要是 变成 ,也只有唯一的操作。操作后再观察 ,发现只有两个矩形,其中一个刚才已经操作过了,那么这种操作还是唯一的。这样递推下去就可以了。而对于有些放个的矩
阅读全文
摘要:现在题解里 Isaunoya 神仙的题解太简洁了,另外两个神仙方法和我不一样,所以我来写一句。 题意是求一个集合中所有子集异或和之和。 因为是异或运算,所以先拆位。考虑每一位,可以想到,要使贡献为 ,那么肯定是选奇数个 和偶数个 。我们分两种情况看一下: 所有的 个数
阅读全文
摘要:前言 一个初二彩笔的游记。停更。 点击将网页转换为AC_WA自动机太菜了模式 引申作品 考 csp 的笨蛋机 result: J 400 S 215 DAY -24 初赛那天没来得及写东西,然后昨天在whk,今天人不舒服在家里,给它补上。 上午考了提高级,本以为要 ,结果挂成屎。 来看
阅读全文
该文被密码保护。