【2023秋招】10月22日美团校招真题

第一题:字符串解压

题目内容

给出一个仅包含小写字母和 '-' 的字符串,按如下规则输出解压后的字符串。

  1. 如果 '一' 连接了多个相同的字符,则只输出第一个字符,'-' 和之后的相同字符不输出。例如 'a-a-a' 替换为 'a''a-aa-a' 替换为 'aa'
  2. 如果 '-' 连接了两个不同的字符,则将连接符及其前后的字符替换为递增或递减的字符串。例如 'a-c' 替换为 'abc''g-c' 替换为 'gfedc''a-e -c' 替换为 'abededc'
  3. 其他字符原样输出。

输入描述

仅一行,表示输入的字符串,字符串长度不超过 10510^5105 ,保证开头和结尾是小写字母,保证不出现两个连续的 '一'

输出描述

仅一行,代表解压后的字符串。

样例

输入

a-fzs-o-o-q

输出

abcdefzsrgpopq

第二题:小美买零食

题目内容

到周末了,小美为了犒劳辛苦了一周得自己,打算去超市买点自己喜欢的零食吃。

由于各个超市的备货情况不同,小美可能需要多走几个超市才能买完自己想要的零食。

小美有 nnn 种心仪的零食,小区附近有 mmm 家超市,第 iii 家超市售卖 ctict_icti种零食,分别为第 ai,1,ai,2,...ai,ctia_{i,1},a_{i,2},...a_{i,ct_i}ai,1,ai,2,...ai,cti 种,小美想要知道至少要需要访问几家超市,才能买齐这 nnn 种零食?

输入描述

第一行,两个正整数 n,mn,mn,m ( 1≤n,m≤201 \le n,m \le 201n,m20 )。

接下来 mmm 行,第 iii 行第一个正整数为 ctict_icti 接下来 ctict_icti 个正整数 ai,1,ai,2,...,ai,ctia_{i,1},a_{i,2},...,a_{i,ct_i}ai,1,ai,2,...,ai,cti ( 1≤ai,j≤n1\le a_{i,j}\le n1ai,jn )。

数字间两两有空格隔开

输出描述

仅一行,一个正整数,表示至少要访问几家超市,如果所有超市都缺少某种零食,输出 −1-11

样例

输入

5 4
1 2
3 1 3 5
2 2 4
1 4

输出

2

第三题:公平的聚会

题目内容

小美管理着一个很大的群聊,里面的 nnn 个人来自不同的 nnn 座城市,城市靠 n−1n-1n1 条道路两两联通。

为了简化问题,我们假设每条道路的长度都是相同的。一场公平的聚会是指,选择一座城市作为聚会点,选择三个人作为聚会的参与者,所有参与者所在的城市到聚会点的距离都相等,且聚会参与者到聚会点的路径不能和其他聚会参与者到聚会点的路径有重合。

现在,小美想要组织一场公平的聚会,请问,有多少种选择方案?

输入描述

第一行一个正整数 nnn ( 4≤n≤50004\le n\le 50004n5000 )。

第二行 n−1n-1n1 个正整数 f1,f2,f3,.....,fnf_1,f_2,f_3,.....,f_nf1,f2,f3,.....,fn 表示城市 iii 与城市 fif_ifi 有一条边,城市从 111 开始编号。

输出描述

仅一行,一个整数, 表示公平的聚会的方案数。

样例

输入

5
1 1 1 1

输出

4

样例解释

聚会点只能选择 111 ,其余 444 个城市任选 333 个的方案数为 444

聚会点不可选择 222333444 。例如选择 222 作为聚会点, 333444555 作为参与者是不合法的,因为 3−>1−>23->1->23>1>24−>1−>24->1->24>1>25−>1−>25->1->25>1>2 都会有一段路径重合,即 1−>21->21>2

第四题:火柴棒

题目内容

给出一个火柴棒表示的三位数加法等式。移动、删除或添加一根火柴算作一次操作。请问,最少需要多少次操作才能变成合法的三位数加法等式。

注意:

  1. 只能对数字进行操作,不可以操作加法符号和等号。
  2. 等式只能由三个可以包含前导零的三位数、一个加号、一个等号组成。
  3. 101010 种数字的形状如下(其中 111 视为靠右的两根火柴组成, 333444777 等同理) :

输入描述

第一行一个正整数 ttt ( 1≤t≤101\le t\le 101t10 )表示数据组数。

接下来 ttt 行每行一个等式,具体格式请参考输入样例。

输出描述

仅一行,一个整数, 表示公平的聚会的方案数。

样例

输入

3
123+321=444
088+111=999
808+111=991

输出

0
1
1

第五题:爬山

题目内容

终于到周末啦!小美打算去爬山玩一玩。

山上一共有 n+1n+1n+1 个标记点按顺序排成一排, 第 iii 个标记点到第 i+1i+1i+1 个标记点的这段路长度为 aia_iai ,美丽值为 bbb 。小美可以选择游览任意连续的一段路,或者放弃游览计划。

小美不希望走太长,也不希望游览的风景过少,请你告诉小美,如果游览长度不超过 AAA ,能获得的最大美丽值之和是多少?

输入描述

第一行两个正整数 nnnAAA1≤n≤5×104,0≤A≤10141\le n\le 5\times 10^4, 0\le A\le 10^{14}1n5×104,0A1014 )。

第二行 nnn 个正整数 a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an1≤ai≤1091\le a_i\le 10^91ai109 )。

第三行 nnn 个正整数 b1,b2,...,bnb_1,b_2,...,b_nb1,b2,...,bn1≤bi≤1091\le b_i\le 10^91bi109 )。

输出描述

仅一行,一个正整数,表示游览长度不超过 AAA 时小美能获得的最大美丽值。

样例

输入

3 2
1 1 1
1 2 3

输出

5

样例解释

如样例所示:

行程数: 333444 个标记点),最大游览距离: 222

各标记点间的行程距离: 1、1、11、1、1111

各标记点间的行程美丽值: 1、2、31、2、3123

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

塔子哥学算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值