摘要:
引入 面积并(周长并) 如下图给你一堆矩形求它的面积并或周长并。 显然直接做,就是考虑容斥,但明显不好做。 那就思考如何切割或补,显然补完要减的图形也不规整,只能考虑割。 如何将其割成规整的图形,明显矩形最容易计算和割。 把它割成矩形后发现,每次遇到某个矩形的边就会变,所以考虑一条线从下向上扫,每遇 阅读全文
摘要:
写在前面 在本篇开始前,想先说明写这篇博客的初衷和希望达到的效果。 本文开始写于2023.8.23,博主第一年高中开学前,\(dp\)是从初中开始就一直很薄弱的版块,在考试中稍微难一点就做不出来,只能打暴力。但其实正解很好实现,很好得分。 初中时,教练和学长都说\(dp\)就是要多做题才能体悟它,初 阅读全文
摘要:
AC自动机 AC自动机是以 \(Trie\) 的结构为基础,结合 \(KMP\) 的思想建立的自动机,用于解决多模式串(作为子串的串)匹配等任务。 建\(tire\) 树,正常操作即可 建\(fail\)树,如果当前节点失配,可以通过跳\(fail\) 快速转到一个可能有答案的位置,相当于\(kmp 阅读全文
摘要:
KMP(Knuth-Morris-Pratt) 用途: 用于一个文本串S内查找一个模式串P 的出现位置,以及求一个字符串的最小循环元长度和最大循环次数。 思路: \(kmp\)是对原始的在文本串S内查找一个模式串P的出现位置的一种优化。 原始做法 将\(s\)的每一位都与\(p\)的第一位开始匹配。 阅读全文
摘要:
1.高斯消元的基础信息 本质 通过初等行变化,将线性方程组的增广矩阵转化为行阶梯矩阵,讲人话就是用加减消元来转化,代入消元来回带。 应用 用来求解线性方程组(m个一次方程,n个变量),矩阵的秩(校园后的主元数)以及求可逆方阵的逆矩阵。 难度 思维难度低,代码实现难度低 复杂度 时间:O(n^3)空间 阅读全文
摘要:
感受总结 考的是2022牛客提高组的第四场。 第一眼难度偏高,第一遍读完题后,四道题都没什么思路,只有一些简单的暴力。 后来仔细想第一题,乱搞了接近80分,写第三,四题的暴力。 第四题40分暴力挂了30分,第三题几乎想出了正解,没有时间写,乱搞了接近20分。 总体结果还行,但在第一题消耗2个半小时不 阅读全文
摘要:
放假前几天,老师让我们打一场ACM来放松一下(非常好,放松不一定,被压力了) C题 C题是个非常水的搜索题,队友看一眼就秒了。写的时候出了一点小问题,但也调出来了,此时我们来到了第6(总共7队)。 #include <bits/stdc++.h> #define ll long long using 阅读全文
摘要:
简介 什么是左偏树? 上面的树都是左偏树。 先引出一个概念,dis等于节点到它子树里面最近的叶子节点的距离,特别地叶子节点的dis等于0。 观察上图我们可以感性理解左偏树,就是左子树的深度大于等于右子树,看上去整个树向左偏。 再看一眼就可以总结出几条性质: 1.左儿子的\(dis\)<=右儿子的\( 阅读全文
摘要:
方法一: 简单贪心题。 如果每个数相等时的数为sum,考虑一个数不等于sum,最好的情况通过一次转移使它变为sum。 所以按顺序处理,当前数少从后面拿,当前数多向后面扔,中间记录次数即可。 考虑正确性,有人会觉得,如果后面的数不够拿成为了负数,需要从更后面拿,就不止一次转移了。 其实,如果遇到上述情 阅读全文