2023暑期集训普及组结营测评全六题题解

题解(但好像不完全是)

早上还在讨论板子内容,结果上课讲的全都没考。所以这里发一下自己几个题的思路,有问题欢迎指正。

写的比较简短。因为好像没什么好写的。


T1 排队做核酸

近期,多地推出常态化核酸检测政策,要求市民每隔一段时间都要完成一次核酸检测,反复循环。如果没有,在进入相关场所时,扫场所码会有弹窗提醒,将无法乘坐公共交通工具、无法进入公共场所。

为了响应国家号召,为防疫做贡献,每隔几天排队做一次核酸已经成为市民小王的日常。但并不是每次去他都能顺利检测,因为有时排队人很多,有时又因为有急事要离开,所以每个人因各种原因都有自己的排队忍耐度,假如小王的排队忍耐度为5,说明他最多允许自己前面排5个人,否则他就会离开。

假如你是核酸检测人员,已知现在有n人排队,和n个人的排队忍耐度,按照他们的排队顺序请你计算出今天会检测几个人。

第一行输入一个整数 n(n<=1000)

第二行输入n个人的排队忍耐度,数据之间用单个空格隔开 (忍耐度<=1000)

思路

输入的时候就可以直接判断,如果答案比这个人的忍耐度低就将答案增加。


T2 人工降雨

每个位置都有一个建筑,每个位置占据的宽度都是一样,可能有不同的高度,现在需要挑选一个位置的上方开始人工降雨,问你最多能淋到雨的位置有几个。如果一个位置能被雨淋到,而且紧挨着的旁边的建筑不高于他,那么旁边的建筑也能被雨淋到。

第一行输入一个整数 n

第二行输入 n 个数,表示 n 个建筑的高度。

1<=n<=1000 ,建筑的高度都 <=1000

思路

懒得思考看到数据范围写了个BFS,如果有一个数比两边都大那么考虑搜索更新答案。


T3 致幻度测试

楠枫误食了毒蘑菇,主治医生在给他挂上点滴后,开始对他进行致幻度检查。医生采取的检查方法是,给楠枫一个单词,让他照着誊抄一遍。但是由于楠枫被幻觉影响,并不能很好的完成这个测试。比如他也许会把 “anagram” 抄成 “nagaram”,也可能把 “rat” 抄成 “car”。

对于字符串 S 和 T,若 S 和 T 中的每个字符出现的次数都相同,则称 S 和 T 互为字母异位词。主治医生给出了 n 个单词来测试楠枫,如果这 n 个单词测试的结果有 80% 及以上是字母异位词而非错误单词,才会认为楠枫的幻觉有所减轻。现在给出 n 个单词(都由英文字母构成),以及楠枫的誊抄结果,需要你帮忙判断一下楠枫的致幻情况是否减轻。

第一行一个整数 n (1≤n≤1000) ,代表 n 个测试。

接下来 2 行,第一行是 n 个待测试单词,第二行是 n 个被誊抄的单词,单词的长度为 [1,1000]

思路

暴力统计一下出现次数即可。


T4 公寓分配

有 n 个申请人和 m 个空闲的公寓。你的任务是分配公寓,以便尽可能多的申请人能够得到一个公寓。每个申请人都有一个期望的公寓大小,他们会接受任何大小与期望大小接近的公寓。

第一行输入三个整数 n,m 和 k:申请人的数量,公寓的数量和最大允许差异。接下来一行包含 n 个整数 a1, a2, …, an:每个申请人的期望公寓大小。如果申请人的期望大小为 x,他或她将接受任何大小在 x-k 和 x+k 之间的公寓。最后一行包含 m 个整数 b1, b2, …, bm:每个公寓的大小。

输出一个整数:能够得到公寓的申请人的数量。

思路

贪心。申请人可以接受大小在 x-kx+k 的公寓,尝试反向考虑将每个公寓处理为 a_i-ka_i+k 的区间,给公寓分配申请人。将公寓和申请人分别排序,如果多个申请人可以分配到同一个公寓取最前者。


T5 塔

你有n个立方体,要用它们建造塔。每当两个立方体叠在一起时,上面的立方体必须比下面的立方体小。你必须按照给定的顺序处理立方体。你可以将立方体放在现有的塔上,也可以开始新的塔。请问最少需要多少个塔?

思路

贪心。加二分查找就不会超时了。


T6 移除比赛

有一个包含n个数字的列表和两个玩家交替移动。每一步,玩家可以从列表的开头或末尾移除一个数字,他们的得分会增加这个数字。两个玩家都试图最大化他们的得分。当两个玩家都采取最优策略时,第一个玩家的最大可能得分是多少?

思路

记忆化搜索。每次搜玩家1在 [l,r] 时玩家为 p 的最大得分。若当前轮到玩家1则取头或取尾加上分数再取最大值,若当前轮到玩家2则取玩家2取头或取尾的最小值。

区间DP也可以。


大致如上。总体来讲是比较简单的。

7 个赞

肥肠感谢

哇偶膜拜Dalao

很感谢
虽然但是《简单》

哪里简单了

1 个赞

tokitsukaze 喜欢自己出题搞多组特殊样例,曙光磁铁喜欢在抽象题里写抽象代码,比起来确实不是一个难度 :sweat_drops:
新学的难点的都没考,对曙光磁铁感恩戴德 :pray:

2 个赞

虽然确实,但这对蒟蒻来说还是太超前了
我应该回入门QAQ

tokitsukaze的题我就没有自己做出来过

1 个赞

没必要 :blush:

大佬 mobai

真上课 6

刚才老师讲题啊

666

这是你们的提?

是集训营普及今天上午考试的题 :sweat_drops:

2 个赞

T3对每对字符串sort再比较一下就行了
T4可以双指针(可能不是正解,但架不住xyd数据水(bushi)

逝的

是这样的,感谢补充!其实字符串可以不用 sort ,装桶就可以了 :sweat_drops:

2 个赞