随笔分类 - programming competition in college
something related to coding in my entire college
摘要:
[D. Rating System](https://codeforces.com/problemset/problem/1845/D) **题目大意** 玩家的初始积分为0,该玩家连续进行$n$场比赛,每场比赛可升高或降低玩家的积分($a_i$)。你可以设置一个$k$值,比赛过程中玩家的积分不会低
阅读全文
[D. Rating System](https://codeforces.com/problemset/problem/1845/D) **题目大意** 玩家的初始积分为0,该玩家连续进行$n$场比赛,每场比赛可升高或降低玩家的积分($a_i$)。你可以设置一个$k$值,比赛过程中玩家的积分不会低
阅读全文
摘要:
[蓝桥杯 2022 省 A] 爬树的甲壳虫 题目描述 有一只甲壳虫想要爬上一颗高度为 $n$ 的树,它一开始位于树根, 高度为 $0$,当它尝试从高度 $i-1$ 爬到高度为 $i$ 的位置时有 $P_{i}$ 的概率会掉回树根, 求它从树根爬到树顶时, 经过的时间的期望值是多少。 输入格式 输入第
阅读全文
[蓝桥杯 2022 省 A] 爬树的甲壳虫 题目描述 有一只甲壳虫想要爬上一颗高度为 $n$ 的树,它一开始位于树根, 高度为 $0$,当它尝试从高度 $i-1$ 爬到高度为 $i$ 的位置时有 $P_{i}$ 的概率会掉回树根, 求它从树根爬到树顶时, 经过的时间的期望值是多少。 输入格式 输入第
阅读全文
摘要:
介绍 字典树是一种树形结构,核心思想是空间换时间,利用字符串的公共前缀来建树。可以快速查找在一对字符串匹配目标字符串。 例子 现有以下字符出: abcab ababa ababb 那么树长这个样子,为了方便遍历加一个树根。 要匹配某个字符串遍历整个树即可。 例题:P8306 【模板】字典树 参考代码
阅读全文
介绍 字典树是一种树形结构,核心思想是空间换时间,利用字符串的公共前缀来建树。可以快速查找在一对字符串匹配目标字符串。 例子 现有以下字符出: abcab ababa ababb 那么树长这个样子,为了方便遍历加一个树根。 要匹配某个字符串遍历整个树即可。 例题:P8306 【模板】字典树 参考代码
阅读全文
摘要:
###D. Fixed Prefix Permutations 题目大意 给定两个排列$p,q$,$r=p\cdot q$表示$r_j=q_{p_j}$。 一个排列$p$的美丽值为满足$p_1=1,\ p_2=2,\ p_3=3,\ \cdots,\ p_k=k$最大的$k$,若$p_1\neq 1
阅读全文
###D. Fixed Prefix Permutations 题目大意 给定两个排列$p,q$,$r=p\cdot q$表示$r_j=q_{p_j}$。 一个排列$p$的美丽值为满足$p_1=1,\ p_2=2,\ p_3=3,\ \cdots,\ p_k=k$最大的$k$,若$p_1\neq 1
阅读全文
摘要:
偏序关系 对于二元关系$R\subseteq S \times S$,若$R$是自反的,反对称的,传递的,那么$R$称为偏序关系。 自反性 $a \preceq a,\forall a\in S$ 反对称性 $\forall a,b\in S$,若$a\preceq b$且$b \preceq a$
阅读全文
偏序关系 对于二元关系$R\subseteq S \times S$,若$R$是自反的,反对称的,传递的,那么$R$称为偏序关系。 自反性 $a \preceq a,\forall a\in S$ 反对称性 $\forall a,b\in S$,若$a\preceq b$且$b \preceq a$
阅读全文
摘要:
例题:P1020 [NOIP1999 普及组] 导弹拦截 题目大意 用一个导弹拦截系统拦截导弹,该系统第一发炮弹能到达任意高度,随后每发炮弹不能高于前一发的高度,每个导弹有一个固定的高度。 问该系统最多能拦截多少导弹,以及拦截所有导弹需要多少个系统。 解题思路 第一问就是求数组的最长下降子序列。 用
阅读全文
例题:P1020 [NOIP1999 普及组] 导弹拦截 题目大意 用一个导弹拦截系统拦截导弹,该系统第一发炮弹能到达任意高度,随后每发炮弹不能高于前一发的高度,每个导弹有一个固定的高度。 问该系统最多能拦截多少导弹,以及拦截所有导弹需要多少个系统。 解题思路 第一问就是求数组的最长下降子序列。 用
阅读全文
摘要:
定义 质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定0,1既不是质数也不是合数)。 互质是公约数只有1的两个整数,叫做互质整数。 1和-1与所有整数互素,而且它们是唯一与0互素的整数。 素数筛 其核心思想是每个质数只被其最小的素数筛掉。 参考
阅读全文
定义 质数又称素数。一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数(规定0,1既不是质数也不是合数)。 互质是公约数只有1的两个整数,叫做互质整数。 1和-1与所有整数互素,而且它们是唯一与0互素的整数。 素数筛 其核心思想是每个质数只被其最小的素数筛掉。 参考
阅读全文
摘要:
C. Equal Frequencies(贪心) 题目大意 给定一个由小写字母构成的字符串$s$,若该字符串中所有字母出现次数相等,则称其为“平衡字符串”。 给定一个字符串$s$,问将其修改为“平衡字符串”的最少操作(将一个字符修改为另一个字符)数,并输出修改后的字符串。 解题思路 枚举使用字符的种
阅读全文
C. Equal Frequencies(贪心) 题目大意 给定一个由小写字母构成的字符串$s$,若该字符串中所有字母出现次数相等,则称其为“平衡字符串”。 给定一个字符串$s$,问将其修改为“平衡字符串”的最少操作(将一个字符修改为另一个字符)数,并输出修改后的字符串。 解题思路 枚举使用字符的种
阅读全文
摘要:
C. Interesting Sequence(二进制) 题目大意 给定两个大于等于0的数$n,\ x$,求满足$n&(n+1)&(n+2)\cdots m=x$的最小$m$,若不存在输出-1。 解题思路 首先若$n<x$肯定无解。 令$l=n,\ r=5e18$,若解存在那么它必定处在$[l,r]
阅读全文
C. Interesting Sequence(二进制) 题目大意 给定两个大于等于0的数$n,\ x$,求满足$n&(n+1)&(n+2)\cdots m=x$的最小$m$,若不存在输出-1。 解题思路 首先若$n<x$肯定无解。 令$l=n,\ r=5e18$,若解存在那么它必定处在$[l,r]
阅读全文
摘要:
D - Lucky Permutation(置换环) 题目大意 给定一个数组,该数组为1到n的全排列。 可以交换数组中两个不同元素的位置(无需相邻) 要使该数组的逆序对恰好为1,最少要多少次交换? 解题思路 逆序对为1的数组只可能是1到n按升序排列后交换相邻两元素得到的数组。 比如2,1,3,4,5
阅读全文
D - Lucky Permutation(置换环) 题目大意 给定一个数组,该数组为1到n的全排列。 可以交换数组中两个不同元素的位置(无需相邻) 要使该数组的逆序对恰好为1,最少要多少次交换? 解题思路 逆序对为1的数组只可能是1到n按升序排列后交换相邻两元素得到的数组。 比如2,1,3,4,5
阅读全文
摘要:
$ST$表$(Sparse\ Table,稀疏表)$是一种数据结构,主要用来解决$RMQ(Range\ Maximum/Minimum\ Query,区间最大/最小值查询)$问题。实现的主要思想是倍增,时间复杂度$O(nlogn)$预处理,$O(1)$查询。但不支持修改操作。 问题引入 P3865
阅读全文
$ST$表$(Sparse\ Table,稀疏表)$是一种数据结构,主要用来解决$RMQ(Range\ Maximum/Minimum\ Query,区间最大/最小值查询)$问题。实现的主要思想是倍增,时间复杂度$O(nlogn)$预处理,$O(1)$查询。但不支持修改操作。 问题引入 P3865
阅读全文
摘要:
C.Koxia and Number Theory(鸽巢原理) 题目大意 给定一个长度为$n(2 \le n \le 100)$的数组$(1\le a[i] \le 10^{18})$,问是否存在一个正整数x,使得对于任意的i,j都满足$gcd(a_i + x,a_j + x) = 1$。 解题思路
阅读全文
C.Koxia and Number Theory(鸽巢原理) 题目大意 给定一个长度为$n(2 \le n \le 100)$的数组$(1\le a[i] \le 10^{18})$,问是否存在一个正整数x,使得对于任意的i,j都满足$gcd(a_i + x,a_j + x) = 1$。 解题思路
阅读全文
摘要:
C. Even Subarrays(前缀异或) 题目大意 给定一个数组,求满足所有元素异或的结果有偶数个因子的子数组的个数。本题将0视作有奇数个因子。 解题思路 直接求不好求,我们可以求异或结果有奇数个因子的子数组。 对于一个数,我们可以将其分解为$p_1^{c_1}p_2^{c_2}\cdots
阅读全文
C. Even Subarrays(前缀异或) 题目大意 给定一个数组,求满足所有元素异或的结果有偶数个因子的子数组的个数。本题将0视作有奇数个因子。 解题思路 直接求不好求,我们可以求异或结果有奇数个因子的子数组。 对于一个数,我们可以将其分解为$p_1^{c_1}p_2^{c_2}\cdots
阅读全文
摘要:
#2153. 「SCOI2005」互不侵犯 解题思路 令dp[i][j][k]表示第i行的状态为j时,共放置k个国王的方案数。 状态j的二进制即表示该行的放置方式,例如j为3时,放置的方式为101,即从右向左看第一位和第三位放置国王,其他位不放置。 可以预处理出每一行所有的合法状态,即两两不相邻的状
阅读全文
#2153. 「SCOI2005」互不侵犯 解题思路 令dp[i][j][k]表示第i行的状态为j时,共放置k个国王的方案数。 状态j的二进制即表示该行的放置方式,例如j为3时,放置的方式为101,即从右向左看第一位和第三位放置国王,其他位不放置。 可以预处理出每一行所有的合法状态,即两两不相邻的状
阅读全文
摘要:
Excel表列名称 基本思路 题目要求按照规则进行进制转换,该进制虽然为26进制,但是没有0,即其每个数的范围是[1,26]。 假设现有字符序列$a_{n-1}...a_1a_0$,其对应的十进制数字为num。那么我们有: $$ num = \sum^{n-1}{i=0} a_i*26^i $$ 由
阅读全文
Excel表列名称 基本思路 题目要求按照规则进行进制转换,该进制虽然为26进制,但是没有0,即其每个数的范围是[1,26]。 假设现有字符序列$a_{n-1}...a_1a_0$,其对应的十进制数字为num。那么我们有: $$ num = \sum^{n-1}{i=0} a_i*26^i $$ 由
阅读全文
摘要:
题意 给定六边形棋盘每个格子的分数,询问若干初始的棋子摆放 方式,问按照规则移除棋子最多得多少分。 移除棋子有两种方式,一种是直接移除一个棋子,不得分; 另一种是用一个棋子跳过其相邻棋子,移除被跳过的棋子并 且得分增加被移除棋子所在的格子的分数。 原题链接 解题思路 棋盘上的每个位置只有放与不放两种
阅读全文
题意 给定六边形棋盘每个格子的分数,询问若干初始的棋子摆放 方式,问按照规则移除棋子最多得多少分。 移除棋子有两种方式,一种是直接移除一个棋子,不得分; 另一种是用一个棋子跳过其相邻棋子,移除被跳过的棋子并 且得分增加被移除棋子所在的格子的分数。 原题链接 解题思路 棋盘上的每个位置只有放与不放两种
阅读全文
摘要:
在二维平面直角坐标系中,只要给定了两点(不重合),就能确定唯一一条直线,但当直线平行或垂直与x轴时,x或y的系数将为0,不方便存储。 不过,既然给定了两个点,我们可以直接用单位向量表示一条直线的斜率。 set<pair<int, int>> S; for (int i = 2; i <= n; ++
阅读全文
在二维平面直角坐标系中,只要给定了两点(不重合),就能确定唯一一条直线,但当直线平行或垂直与x轴时,x或y的系数将为0,不方便存储。 不过,既然给定了两个点,我们可以直接用单位向量表示一条直线的斜率。 set<pair<int, int>> S; for (int i = 2; i <= n; ++
阅读全文
摘要:
求组合数 I 组合数递推式 $$C^b_a = C^b_{a-1} + C^{b-1}_{a-1}$$ $C^b_a$的含义为在a个物品中选出b个物品的方案数,我们考虑将a个物品分为两部分,a-1个物品为一部分,剩下一个物品为另一部分, 现在我们有两种方案,选择剩下那个物品,则要从a-1中选择b个,
阅读全文
求组合数 I 组合数递推式 $$C^b_a = C^b_{a-1} + C^{b-1}_{a-1}$$ $C^b_a$的含义为在a个物品中选出b个物品的方案数,我们考虑将a个物品分为两部分,a-1个物品为一部分,剩下一个物品为另一部分, 现在我们有两种方案,选择剩下那个物品,则要从a-1中选择b个,
阅读全文
摘要:#引入 lucas定理用于求解大组合数取模问题,其中模数必须为素数。并且p的范围不能太大,一般为$10^5$左右。 #定义 lucas定理内容如下,对于质数p,有 $$ C^m_n \equiv C^{\lfloor m/p \rfloor}{\lfloor n/p \rfloor} * C^{m%
阅读全文
摘要:乘法逆元在取模运算中发挥着极其重要的作用。 我们可以很轻松的证明以下式子: $$ (a+b)%p = (a%p+b%p)%p\ (a-b)%p = (a%p-b%p)%p\ ab%p = a%pb%p $$ 但是对于除法: $$ \frac{a}{b}%p \neq \frac{a%p}{b%p}%
阅读全文

浙公网安备 33010602011771号