• 2024-08-30奇技淫巧
    导论任何奇技淫巧以能在比赛时使用为标准。任何颠覆了传统且对比赛有帮助的东西统称奇技淫巧。奇技淫巧抑或是能减少码量,抑或是能优化时空,抑或是能乱搞,抑或只是为了装逼。目前主要分为如下几个类别:语法类:新标准中的语法,目前支持到C++14。也会包含一些冷门语法。STL类:包括
  • 2024-08-23概率和期望总结
    数学是毒瘤概率与期望总结。看这玩意就跟看扩展欧几里得、看矩阵乘法、看组合数学差不多,甚至比那些还难一个档次,因为它还跟DP搞在一起,美其名曰:概率DP和期望DP。概率定义某个随机试验的某种可能结果称为样本点所有样本点构成的集合称为样本空间到这里很好理解,例
  • 2024-08-20平衡树总结
    平衡树刚看的时候觉得很不好评价。但它毕竟就是个数据结构,跟线段树的用途一样,都是用来维护数据。想想你刚看线段树时候的感受,是不是和现在刚看平衡树差不多。事实来看,平衡树也不复杂。本质都是二叉搜索树,只不过维护平衡的方式不一样罢了。平衡树的类型看似那么多,实际上也就学两
  • 2024-08-17近期模拟赛总结
    7/5rnk8,总体不错,仍有进步空间。比赛历程记录个人认为这次的答题策略很优,值得以后学习:T1想了十几分钟,一开始想的有点偏,打了个实测60pts的东西上去,时间过去将近1h;看T2,像是一个计数DP之类的东西,不会,打了30pts的暴力,时间过去1.5h多;看T3,不会;看T4,想到了去年普及组
  • 2024-07-22OI-Wiki 学习笔记
    算法基础\(\text{Update:2024-07-22}\)复杂度定义衡量一个算法的快慢,一定要考虑数据规模的大小。一般来说,数据规模越大,算法的用时就越长。而在算法竞赛中,我们衡量一个算法的效率时,最重要的不是看它在某个数据规模下的用时,而是看它的用时随数据规模而增长的趋势,即时间复
  • 2024-05-22【老鼠看不懂的数据结构】FHQTreap 初识
    Treap弱平衡的随机性很强的老鼠看不懂的平衡树Q:为什么叫Treap?A:看看二叉搜索树(BST)和堆(Heap),组合起来就是Treap其中,二叉搜索树的性质是:左子节点的值(val)比父节点小右子节点的值(val)比父节点大如果这些节点的值都一样,这棵树就会退化成一颗(?)链。对,我知道你在想
  • 2024-04-05重生之分块修炼
    \(\textit{2024.1.2711:45}\),召唤最强从者——职阶为\(\textit{Oier}\)的\(\textit{Soul}\)_\(\textit{Love}\)协助学习分块。\(\textit{2024.1.2714:30}\),从《分块(块状数组)(从入门到出门右拐)》开始。重修分块。\(\textit{2024.1.2811:20-11:46}\),拿P3372【模板】
  • 2024-02-25Part1: Overview of Diffusion Process
    本文将会概括性地介绍\(\textit{DiffusionProcess}\)算法与实践,主要参考论文《DenoisingDiffusionProbabilisticModels》。它的一些改进与优化,将“扩散方法”带入主流视野。而具体的数学推导部分,请参考其它系列文章。整个系列有相对完整的公式推导,若正文中有涉及到的省略部分
  • 2023-12-11平衡树(无旋Treap,范浩强树)学习笔记
    平衡树:YYDS以下是常见的平衡树/要用平衡树实现的算法:Treap(有旋/无旋)Splay树WBLT(WeightBalancedLeafyTree,重量平衡线段树)SBT(SizeBalancedTree,陈启峰树)AVL树B树、B+树笛卡尔树红黑树、左偏红黑树、AA树替罪羊树\(\to\)K-DTree(k-DimensionTree)LT(LeafyTree,平
  • 2023-11-08Tarjan 学习笔记
    萌新刚学Tarjan,啥也不会,肯定一堆错,请大佬指正谢谢前置强连通强连通:在不是强连通图的有向图\(G\)内,其顶点\(u\),\(v\)两个方向上都存在有向路径,则\(u\)和\(v\)强连通强连通图:对于有向图\(G\),若\(G\)中任意两个结点连通,则称有向图\(G\)强连通。强连通分量:有向图的极
  • 2023-10-23[Leetcode] 0824. 山羊拉丁文
    824.山羊拉丁文题目描述给你一个由若干单词组成的句子 sentence,单词间由空格分隔。每个单词仅由大写和小写英文字母组成。请你将句子转换为“山羊拉丁文(GoatLatin)”(一种类似于猪拉丁文 -PigLatin的虚构语言)。山羊拉丁文的规则如下:如果单词以元音开头('a','e','i',
  • 2023-10-23[Leetcode] 0821. 字符的最短距离
    821.字符的最短距离题目描述给你一个字符串s和一个字符c,且c是s中出现过的字符。返回一个整数数组answer,其中answer.length==s.length且answer[i]是s中从下标i到离它最近的字符c的距离。两个下标 i和j之间的距离为abs(i-j),其中abs是绝
  • 2023-10-19[Leetcode] 0069. x 的平方根
    69.x的平方根题目描述给你一个非负整数x,计算并返回 x 的算术平方根。由于返回类型是整数,结果只保留整数部分,小数部分将被舍去。注意:不允许使用任何内置指数函数和算符,例如pow(x,0.5)或者x**0.5。 示例1:输入:x=4输出:2示例2:输入:x=8输出:2解释
  • 2023-10-18[Leetcode] 0066. 加一
    66.加一题目描述给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位,数组中每个元素只存储单个数字。你可以假设除了整数0之外,这个整数不会以零开头。 示例 1:输入:digits=[1,2,3]输出:[1,2,4]解释:输入数组表示数字1
  • 2023-10-09 公平的糖果交换
    爱丽丝和鲍勃拥有不同总数量的糖果。给你两个数组 aliceSizes 和 bobSizes ,aliceSizes[i] 是爱丽丝拥有的第 i 盒糖果中的糖果数量,bobSizes[j] 是鲍勃拥有的第 j 盒糖果中的糖果数量。两人想要互相交换一盒糖果,这样在交换之后,他们就可以拥有相同总数量的糖果。一个人拥
  • 2023-10-09排序数组
       排序数组 数组C++JavaPython前言本题你可以选择直接调用库函数来对序列进行排序,但意义不大。由于排序算法有很多,本文只介绍三种常见的基于比较的复杂度较低的排序。方法一:快速排序思路和算法快速排序的主要思想是通过划分将待排序的序列分成前后两
  • 2023-09-149.14日
    今天我学到了单链表和双链表的顺序表示,基本操作的实现,还了解了循环链表和双向循环链表。早上的重点是用例是UML统一建模语言的核心,接着是乒乓球横版的握持方法及上旋球发力动作要领及其训练。下午还有离散数学中序偶与笛卡尔积,集合关系及其表示。总之今天是充实的一天,也是非常
  • 2023-08-02[算法题python]822.翻转卡片游戏
    在桌子上有 n 张卡片,每张卡片的正面和背面都写着一个正数(正面与背面上的数有可能不一样)。我们可以先翻转任意张卡片,然后选择其中一张卡片。如果选中的那张卡片背面的数字 x 与任意一张卡片的正面的数字都不同,那么这个数字是我们想要的数字。哪个数是这些想要的数字中最小的
  • 2023-05-22动态规划 实例
    算法-动态规划动态规划实例一、数字三角形(树形动规)1、简单的递归2、记忆递归型的动态规划2、递推型动态规划总结:二、石子游戏LeetCode=i=lmaxr{f[l][i]+sum(l,i)}动态规划实例一、数字三角形(树形动规)7 38 810 2744 4526
  • 2022-12-19有序数组中的单一元素
    有序数组中的单一元素传送门方法一:全数组的二分查找思路:假设只出现一次的元素位于下标x,由于其余每个元素都出现两次,因此下标x的左边和右边都有偶数个元素,数组的长度
  • 2022-12-07LeetCode 66.加一
    题目题目链接:https://leetcode.cn/problems/plus-one/给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位,数组中每个
  • 2022-12-05leetcode 1774. 最接近目标价格的甜点成本
    1774.最接近目标价格的甜点成本难度中等133收藏分享切换为英文接收动态反馈你打算做甜点,现在需要购买配料。目前共有 n 种冰激凌基料和 m 种配料可供选购。而制
  • 2022-11-20【学习笔记/习题总结】kruskal重构树
    kruskal重构树注:默认您学会了求最小生成树的kruskal算法,并且知道何为最小瓶颈生成树和最小瓶颈路。定义:在跑kruskal的过程中我们会从小到大加入若干条边,我们仍然按
  • 2022-10-28【ARC080F】Prime Flip(二分图匹配,差分)
    这种区间反转的题,套路就是差分。设\(a_i\)表示第\(i\)枚硬币是否正面朝上,显然只有\(a_{x_1},a_{x_2},\cdots,a_{x_n}\)等于\(1\),其他都是\(0\)。那么我们的目标是
  • 2022-10-13Note / Solution Set -「Binomial Sum」两道例题
      删本地文件的时候瞟了一眼内容...这篇好像忘记发布了?  给定\(n,k\),求出\[\textit{ans}=\sum_{i=0}^n\binom{n}{i}i^k\bmod(10^9+7).\]  \(k\le5\times10