首页 > TAG信息列表 > operatorname

整除相关

gcd 相关 首先要熟悉几个转化: \(\gcd (a,b) = \gcd(a, a + qb)\) \(\gcd (a, b) = \gcd(a, a - b)\) \(\gcd (a, b) = \gcd(a, a \% b)\) 这几个转化很常见。 还有: \(\operatorname{lcm}(a, \gcd(b, c)) = \gcd(\operatorname{lcm}(a, b), \operatorname{lcm}(a, c))\) \(\g

OI中的一些数学小技巧

在OI比赛中,如果能够灵活地运用一些数学小技巧,是能够很好地优化计算的时间和正确性的。 既然说了是小技巧,那么这些指的都是一些技巧,一般是不会单独成题的。 光速幂 有的时候,我们要去求解一个数或者一个矩阵的若干次幂,而这个指数在一般情况下是暴力无法接受的,这个时候我们会想到使用

Learn Dijkstra For The Last Time

博客链接:https://www.codein.icu/learn-dijkstra/ Introduction Dijkstra 算法是用于求解非负权图单源最短路的经典算法。 市面上的大部分教程都仅仅停留在「如何实现 Dijkstra 算法」的层面。从应用角度,这当然无可厚非。但理解算法本身,也不失为一件乐事。 问自己这样几个问题: Di

CF1712B Woeful Permutation 题解

题目传送门 题目简介 给定一个正整数 \(n\),构造一个数列 \(p\),使 \(1\) 到 \(n\) 中每一个数都出现且只出现 \(1\) 次。 求最大的 \(\sum\limits_{i=1}^n\operatorname{lcm}(i, p_i)\),并输出取得最大值时的数列。 思路 基础知识:\(\operatorname{lcm}(a,b)=\dfrac{a\times b}

莫比乌斯反演学习笔记

前置知识 数论分块 一些基础数论知识 积性函数 定义:如果一个数论函数 \(f(x)\),对于任意的在其定义域中的 \(x,y\),满足 \(f(xy)=f(x)f(y)\ \ (\gcd(x,y)=1)\),则称 \(f(x)\) 为积性函数(Multiplicative Function)。 若 \(f(xy)=f(x)f(y)\),则称其为完全积性函数(Completely Multipl

原根

目录原根Some Important Ideas Before THis阶DefinitionProperty 1Property 2Property 3Property 4原根Definition原根判定定理原根个数原根存在定理原根存在定理Lemma to Theorem 1Theorem 1Lemma to Theorem 2Theorem 2Theorem 3Theorem 4 原根 Some Important Ideas Before THi

「NOI2020」超现实树

题目 点这里看题目。 分析 困难的题目。 思路一 从命题逻辑的角度考察一棵树的限制。 某棵树的 \(\operatorname{grow}\) 可以被写作树上结点存在性(在或不在)的合取。考察 \(\operatorname{grow}\) 的并的时候,出于方便运算的考虑可以取补集,于是就变成了析取范式的合取运算。 然而树

数论

前言 本蒟蒻在写初赛题后听讲评时,听得一脸懵,发现对数论无所了解,于是疯狂地补,此博客在有生之年不会完结(吧),希望 \(hzx\) 不会又说我。 符号 整除符号:\(x \mid y\) 取模符号:\(x \bmod y\) 互质符号:\(x \perp y\) 最大公约数:\(\gcd(x,y)\) 最小公倍数:\(\operatorname{lcm}(x,y)\) 求和

扩展 KMP(Z 函数)

扩展 KMP(Z 函数) 下文用 \([a, b]\) 表示 \(s[a \to b]\),\((l, r)\) 表示当前 \(r\) 最右的匹配段。 问题一 要解决的问题为:求出 \(z\) 函数,\(z(i) = \operatorname{LCP}(s[i, nS], s[1, nS])\),其中 \(\operatorname {LCP}(a, b)\) 表示 \(a, b\) 的最长相同前缀。 考虑到 \([l, r]

博弈论

博弈论 本篇几乎全文摘自 OI Wiki - 公平组合游戏 及学长的 PPT( 公平组合游戏 公平组合游戏的定义如下:游戏有两个人参与,二者轮流做出决策,双方均知道游戏的完整信息; 任意一个游戏者在某一确定状态可以作出的决策集合只与当前的状态有关,而与游戏者无关; 游戏中的同一个状态不可能多

Hash——温暖人心的算法

目录简介计算Hash前缀Hash递推快速计算子串Hash用Hash匹配字符串综合:P2852 [USACO06DEC]Milk Patterns G 简介 Hash,将一个字符串映射到一个数字上。 计算Hash 计算Hash的方法有很多种,比如说在密码学中常用的 \(\texttt{MD5}\) 和 \(\texttt{SHA256}\) 等。 但是我们一般使用一个简

位运算卷积与快速沃尔什变换

我们要快速计算一类形如 \[c_i=\sum_{j\oplus k=i} a_jb_k \]的问题,其中 \(\oplus\) 是 \(\operatorname{bitand},\operatorname{bitor},\operatorname{xor}\) 之一。 And 卷积 / Or 卷积 对于下标范围是 \([0,2^n-1]\) 的数列 \(a\),设 \[\mathrm{FMT}(a)_i=\sum_{j\operatorname{

【模板】摩尔投票法

如果有一些候选人,分别得到了一些票。 其中有一个候选人的票数超过一半,请求出这个候选人。 因为这个候选人得票超过一半,所以只要把不同的候选人的票两两相消,最后剩下的一定是那个候选人。 时间:\(\operatorname{O}(n)\); 空间:\(\operatorname{O}(1)\)。 #include <stdio.h> char _tc;

题解 P8445 【射命丸文的取材之旅】

简要题意 给定序列 \(\{a_n\},\{b_n\}\),求一个序列 \(\{c_n\}\) 满足 \(\forall i\in[1,n],c_i\in\{a_i,b_i\}\),求最大 \[\max\{r-l+1-\operatorname{mex}\{c_l,c_{l+1},\dots, c_{r-1},c_r\}\}(1\le l\le r\le n) \]\(1 \leq n\le 10^6\),\(0\leq a_i,b_i

「学习笔记」博弈论

一. NIM 游戏 \(n\) 堆物品,每堆有 \(a_i\) 个,两个玩家轮流取走任意一堆的任意个物品,但不能不取。 取走最后一个物品的人获胜。 例如,如果现在有 \(n=3\) 堆物品,而每堆分别有 \(2,5,4\) 个,那么可以取走第 \(1\) 堆中的 \(2\) 个物品,局面就变成了 \(0,5,4\);或者也可以取走第 \(2\) 堆

题解 Luogu P4891 序列

题意 给定两个长度为 \(n\) 的非负整数序列 \(A,B\),并定义数列 \(C\),\(C_i = \max\limits_{j=1}^{i}{A_i}\)。 有 \(q\) 次操作,每次对 \(A\) 和 \(B\) 的某个位置进行修改,然后询问 \(\prod \limits_{i=1}^{n} \min\{B_i,C_i\} \bmod 10^9+7\)。保证修改之后不小于原数。 \(1 \leq

[CF1699C]The Third Problem

做题时间:2022.7.12 \(【题目描述】\) 给定一个长度为 \(N(N\leq 10^5)\) 的排列 \(a_i\) ,其中的数包括 \([0,n-1]\) ,求出有多少个排列 \(b_i\) 满足对于 \(\forall l,r,1\leq l\leq r\leq N\) ,满足: \[\operatorname{MEX}([a_l,a_{l+1},\ldots,a_r])=\operatorname{MEX}([b_l,b_{l+

树的直径与重心学习笔记

树的直径 定义 在一棵树上(默认无根树),定义 \(\operatorname{Dis}(u,v)\) 表示 \(u\) 到 \(v\) 的最短路径。 树的直径就是 \(\max\{\operatorname{Dis}\}\)。 求法 一般使用两遍DFS打法。(当然,也可以使用树上DP) 首先,任意选一个点 \(w\),从这个点出发,DFS整棵树,然后预处理 \(\operatorn

有向图最短偶环的多项式算法 (Björklund, Husfeldt, Kaski, 2022)

本文将对 STOC2022 的一篇论文: "The shortest even cycle problem is tractable" 进行解读. 虽然这是一篇很新的文章, 但是其核心技术还是相当通俗易懂的. 下文讨论的皆为无权图, 或者说, 环的长度就是经过的点的数目. 我们知道, 最短奇环是容易解决的, 因为最短奇回路 (closed w

排列 题解

题面 给定一个长度为4的排列a与一个长度为n的排列b。在b中选出长度为4的子序列使该子序列与排列a的相对顺序相同。输出选法个数。共24个subtask,意即所有排列都会出现。$ n \le 2000。 $ 解法 我们考虑将这个排列a划分成两个互不相关的部分。两个部分互不相关,当且仅当他们在值域上

CF1696D Permutation Graph 题解

可能更好的阅读体验 题目传送门 题目大意 给定一个长度为 \(n\) 排列 \(a\)。 定义 \(\operatorname{mn}(i,j)=\min\limits_{k=i}^{j}a_k,\operatorname{mx}(i,j)=\max\limits_{k=i}^{j}a_k\)。 然后建立一个 \(n\) 个节点图,如果 \(\operatorname{mn}(i,j)=a_i ,\operatorname{mx}

SD

D1T1 树形 \(\text{DP}\)。 令 \(f_{u,s,k},(k\in\{0,1\})\) 表示仅考虑以点 \(u\) 为根的子树,固定 \(u\) 的权值为 \(s\),\(u\) 子树中是否有点的权比 \(u\) 的权大的方案数。 \[\begin{aligned}\\ f_{u,s,0}&=\sum_{v\in\operatorname{son}(u)}\sum_{w\in\operatorname{son}(u),w

【瞎口胡】后缀自动机(SAM)

前言 后缀自动机(Suffix Automaton, SAM)是一个能解决许多字符串相关问题的数学模型。 需要注意的是,自动机不是算法,也不是数据结构,而是一种数学模型。实现同一种自动机的方法不同可能会造成时空复杂度不同。 以下问题都可以在线性时间内通过 SAM 解决: 在另一个字符串中搜索一个字

DTOJ #3194. 去月球 题解

几个关键点。 可以用栈模拟求答案过程,因为随便匹配答案也是对的,很好反证,读者自证不难。 对于区间 \([l,r]\) 询问,可以用前缀 \(l-1\) 和前缀 \(r\) 的栈状态回答:如果 \(l-1\) 的状态是 \(a_1,a_2,\dots,a_x\),加入 \([l,r]\) 后,变成 \(a_1,a_2,\dots,a_y\),其中两段的 \(\operatorn

「WC2018」州区划分 题解

Solution 注意到 \(n\le21\),优先考虑状压。 记全集为 \(U\),\(f_S\) 为点集 \(S\) 的所有合法的划分方案的满意度之和,\(\operatorname{Sum}(S)\) 为点集 \(S\) 的人口和,即 \(\sum_{x\in S}w_x\),\(g_S\) 为点集 \(S\) 是否合法(合法为 \(1\),否则为 \(0\))。根据题意可写出如下转移方程