9.20-得物-笔试
选择题
语言考的都是 Golang,代码片段题就不写了
Map 并发安全问题
LLM 文本分词
用 comparable 做 > 操作,问运行结果
接口 nil 值是否安全
贪心和 DP 的共同点
6 个并发进程,每个所需资源数为 4,资源数至少多少才不会发生死锁
数组二分查找某个元素,要比较多少次
判断类型转换是否合法,string 转 float 非法、bool 转 int 非法
修改表中 name 字段及其注释,正确的 SQL 语句
copy 操作
数据库事务
进程用完时间片进入什么状态
DevOps 工具,只知道 K8s
编程题
只能用 Golang 来做
T1
模拟
小A在餐馆打工,他的主要工作就是洗盘子。某一天餐厅有 个盘子需要清洗,从上到下编号 1-n,小A只会每次拿最上面连续的若干个编号连续的盘子 l-r,然后按照 r-l 的顺序来洗它们。
现在,给出一个人洗这个盘子的顺序,请你判断一下是否可能是小A洗盘子的顺序。
输入描述
第一行一个整数 表示数据组数。
对于每组数据:
第一行一个整数 n
第二行 n 个整数 ai-an,数字间两两有空格隔开,表示某个人洗盘子的顺序
数据范围:1 <= n <= 1000,1 <= T <= 50
输出描述
输出 行,每行一个单词,如果可能是小 A 洗的,则输出 yes,否则输出 no。
样例输入
2
5
1 2 5 4 3
5
1 2 5 3 4
样例输出
yes
no
提示
第一组样例:先拿出盘子 1,再拿出盘子2 ,再拿出盘子 3~5。 第二组样例:不可能是小 A 洗的。
T2
不太会
贪心做了一遍,91%
DP 做了一遍,91%
想不明白直接交了
小钟有一个长度为 n 的字符串 s。小钟可以对 执行如下操作:删除 的一个字符,并拼接剩下的字符串。例如,字符串 s = abcda,小钟可以删除第三个字符,从而得到新的字符串 abda。
某一天,小钟得到了另一个长度为 m 的字符串 t。现在,小钟想知道最少删除s 多少个字符,才能使得 t 作为 s 的某个连续子串出现。如果无论如何也不能使得 t 在 s 中出现,则输 -1出。
输入描述
输入包括多组测试数据。
输入第一行包括一个正整数 T(1 <= T <= 10),表示测试数据的组数。
每组测试数据的第一行有两个整数 n(1 <= n <= 100000),m(1 <= m <= 200),分别表示 s 和 t 的长度;
第二行有一行字符串 s;
第三行有一行字符串 t。
保证每个测试点的所有测试数据的 n ✖ m 的和均不超过 20000000 ,保证所有字符均为小写字母。
输出描述
对于每组测试数据,输出一个正整数表示使得 作为 的某个连续子串出现的最少删除字符个数。若不存在答案,则输出 -1。
样例输入
2
8 3
abcdefgh
acg
5 2
aaaaa
ab
样例输出
4
-1
提示
对于第一组测试数据,删除第 2、4、5、6 个字符后字符串变为 acgh,字符串 t = acg 作为 s 的一个连续子串出现。
对于第二组测试数据,s 中不包含字符 b ,因而无论如何都不可能使得 t 作为 s 的某个连续子串出现。
T3
前缀和记录 ai - bi
哈希表记录每个和出现的次数
题目描述: 小A非常喜欢吃糖,尤其喜欢吃椰子糖与玉米糖。现在小A正在商店中买糖,小A有一个奇怪的癖好,他希望购买的糖满足,椰子糖的数量恰比玉米糖的数量多m个。 商店做促销,将椰子糖与玉米糖捆绑销售,货架上一共有n个糖罐排成一排,其中第i个糖罐中包含a_i个椰子糖与b_i个玉米糖,同时要求顾客只有购买连续的一段糖罐才能享受优惠(特别地,只买某一罐也视为连续),那么小A想知道,一共有几种购买方式才能在享受商店优惠的同时,满足他奇怪的癖好。 换而言之,求有几对二元组(L,R),(L<=R)满足(a_1+a_2+...+a_R)-(b_1+b_2+...+b_R)=m
输入描述: 第一行两个正整数n,m 第二行n个正整数a_i 第三行n个正整数b_i 1 ≤ n ≤ 10^5, 1 ≤ a_i, b_i, m ≤ 10^9
输出描述: 输出一个正整数,表示购买的方案数。
样例输入1:
3 2
1 5 1
2 2 2
样例输出1:
提示: 合法的区间 (1, r) 有 (1, 2) 与 (2, 3)
输入样例2:
5 4
1 2 3 4 5
5 4 3 2 1
输出样例2:
样例解释2: 合法的区间 (1, r) 有 (2, 5) 与 (5, 5)
#发面经攒人品#
语言考的都是 Golang,代码片段题就不写了
Map 并发安全问题
LLM 文本分词
用 comparable 做 > 操作,问运行结果
接口 nil 值是否安全
贪心和 DP 的共同点
6 个并发进程,每个所需资源数为 4,资源数至少多少才不会发生死锁
数组二分查找某个元素,要比较多少次
判断类型转换是否合法,string 转 float 非法、bool 转 int 非法
修改表中 name 字段及其注释,正确的 SQL 语句
copy 操作
数据库事务
进程用完时间片进入什么状态
DevOps 工具,只知道 K8s
编程题
只能用 Golang 来做
T1
模拟
小A在餐馆打工,他的主要工作就是洗盘子。某一天餐厅有 个盘子需要清洗,从上到下编号 1-n,小A只会每次拿最上面连续的若干个编号连续的盘子 l-r,然后按照 r-l 的顺序来洗它们。
现在,给出一个人洗这个盘子的顺序,请你判断一下是否可能是小A洗盘子的顺序。
输入描述
第一行一个整数 表示数据组数。
对于每组数据:
第一行一个整数 n
第二行 n 个整数 ai-an,数字间两两有空格隔开,表示某个人洗盘子的顺序
数据范围:1 <= n <= 1000,1 <= T <= 50
输出描述
输出 行,每行一个单词,如果可能是小 A 洗的,则输出 yes,否则输出 no。
样例输入
2
5
1 2 5 4 3
5
1 2 5 3 4
样例输出
yes
no
提示
第一组样例:先拿出盘子 1,再拿出盘子2 ,再拿出盘子 3~5。 第二组样例:不可能是小 A 洗的。
T2
不太会
贪心做了一遍,91%
DP 做了一遍,91%
想不明白直接交了
小钟有一个长度为 n 的字符串 s。小钟可以对 执行如下操作:删除 的一个字符,并拼接剩下的字符串。例如,字符串 s = abcda,小钟可以删除第三个字符,从而得到新的字符串 abda。
某一天,小钟得到了另一个长度为 m 的字符串 t。现在,小钟想知道最少删除s 多少个字符,才能使得 t 作为 s 的某个连续子串出现。如果无论如何也不能使得 t 在 s 中出现,则输 -1出。
输入描述
输入包括多组测试数据。
输入第一行包括一个正整数 T(1 <= T <= 10),表示测试数据的组数。
每组测试数据的第一行有两个整数 n(1 <= n <= 100000),m(1 <= m <= 200),分别表示 s 和 t 的长度;
第二行有一行字符串 s;
第三行有一行字符串 t。
保证每个测试点的所有测试数据的 n ✖ m 的和均不超过 20000000 ,保证所有字符均为小写字母。
输出描述
对于每组测试数据,输出一个正整数表示使得 作为 的某个连续子串出现的最少删除字符个数。若不存在答案,则输出 -1。
样例输入
2
8 3
abcdefgh
acg
5 2
aaaaa
ab
样例输出
4
-1
提示
对于第一组测试数据,删除第 2、4、5、6 个字符后字符串变为 acgh,字符串 t = acg 作为 s 的一个连续子串出现。
对于第二组测试数据,s 中不包含字符 b ,因而无论如何都不可能使得 t 作为 s 的某个连续子串出现。
T3
前缀和记录 ai - bi
哈希表记录每个和出现的次数
题目描述: 小A非常喜欢吃糖,尤其喜欢吃椰子糖与玉米糖。现在小A正在商店中买糖,小A有一个奇怪的癖好,他希望购买的糖满足,椰子糖的数量恰比玉米糖的数量多m个。 商店做促销,将椰子糖与玉米糖捆绑销售,货架上一共有n个糖罐排成一排,其中第i个糖罐中包含a_i个椰子糖与b_i个玉米糖,同时要求顾客只有购买连续的一段糖罐才能享受优惠(特别地,只买某一罐也视为连续),那么小A想知道,一共有几种购买方式才能在享受商店优惠的同时,满足他奇怪的癖好。 换而言之,求有几对二元组(L,R),(L<=R)满足(a_1+a_2+...+a_R)-(b_1+b_2+...+b_R)=m
输入描述: 第一行两个正整数n,m 第二行n个正整数a_i 第三行n个正整数b_i 1 ≤ n ≤ 10^5, 1 ≤ a_i, b_i, m ≤ 10^9
输出描述: 输出一个正整数,表示购买的方案数。
样例输入1:
3 2
1 5 1
2 2 2
样例输出1:
提示: 合法的区间 (1, r) 有 (1, 2) 与 (2, 3)
输入样例2:
5 4
1 2 3 4 5
5 4 3 2 1
输出样例2:
样例解释2: 合法的区间 (1, r) 有 (2, 5) 与 (5, 5)
#发面经攒人品#
全部评论
相关推荐