[LeetCode] 笔试复盘

各种笔试的相关记忆

Posted by Penistrong on April 19, 2023

笔试复盘

阿里巴巴

T1. 众数

T2. 开心消消乐

给定一个 $n \times m$ 的格子盘,每个格子都有其颜色和分数

点击一个格子后,会消除连在一起的所有颜色相同的格子,消除后格子上方的未消除格子将自动下落

请输出每次点击后的当次得分

输入:

第一行两个数字 $n$ 和 $m$

接下来的 $n$ 行,每行有 $m$ 个长度为2的字符串,每个字符串由1个小写字母表示其格子颜色和1个 $0$ ~ $9$ 的整数表示其分数

接下来给出一个数字 $q$,表示有q次点击

最后给出 $q$ 行,每行包括一次点击事件的行列标号$x_i$和$y_i$

约束范围:

$1 \le n,m \le 50$, $q \in [1, 100]$

$x_i \in [1, n], y_i \in [1, m]$

用例: (记不清了,随便写个大致的)

输入:

3 3
a1 a2 c2
b1 a4 a3
b4 c1 c2 
3
2 2
2 3
3 3

输出:

10
5
0

T3. 回文权值和

一个字符串的权值定义为: 该字符串所有长度为3的回文子串的个数

给定长度$n$,请统计所有长度为$n$的由小写字母组成的字符串的权值之和,由于权值和非常大,取模$10^9 + 7$

约束范围: $n \in [1, 10^{12}]$

提示: 一共有 $26^n$ 个字符串

用例:

输入 $n = 3$ 输出 $676$,即 abaovo等字符串的权值和

用例比较好理解,奇数长度下中间字母在26个里任选,两端必须相同所以也在26个里任选,一共有$26 \times 26 = 676$种组合