Golang中有关slice的知识点

slice的内部实现 slice不存储任何数据,它只描述了底层数组中的一段,它是一个包含三个字段的数据结构: 指针:指向slice第一个元素对应的底层数组元素的地址 长度:即slice中能访问的元素的个数 容……

全排列的逆序对的个数

对于两个不同的数 $x$ 和 $y$ ,它们成为逆序对的概率为 $\frac{1}{2}$ ( $x$ 要么在 $y$ 之前,要么在 $y$ 之后)。因此,对于一个不含重复元素的长度为 $n$ 的排列 $p$ ,有 $C_{n}^2$ 个两个元素不相同的二元组,其逆序对的个数期望是 $C_n^2/2$ ;对于一个包含重复元……

长度为5的回文子序列个数

例题链接 LeetCode 2484. Count Palindromic Subsequences 思路 注意:以下解法允许子序列重复。 首先逆序遍历字符串,统计每个数字出现的次数 $suf[a]$ 和两个数字组合出现的次数 $suf2[a][b]$ ,具体做法为:令当前遍历到的数字为 $a$,则对所有的 $suf2[a][0\cdots9]$ 都需要加上 $suf[0\cdots9]$ ,然后再令 $suf[a]$……

非负数矩阵中和恰好为k的子矩阵个数

例题链接 Moonlight over the Lotus Pond 思路 不妨设 $n\le m$ ,枚举子矩阵的上下边界 $i,j$ ,对于给定的 $i$ 和 $j$ ,问题转化为在一段长度为 $m$ 的序列中计算和为 $k$ 的子区间个数(想象把第 $i$ 行到第 $j$ 行压缩成一行),由于题目规定矩阵中所有元素非负,因……

多次询问两个数的公共质因子

例题链接 牛客小白月赛60:E-寻找小竹! 思路 两个数的公共质因子也是它们的 gcd 的质因子,因此在素数筛的过程中顺便记录每个数 $x$ 的最小质因子,记为 $mnp[x]$,对于输入的两个数 $a_x$ 和 $a_y$ ,记 $g=gcd(a_……