一个四道题,前两道水题,第三题离散化+并查集,第四题用建图然后跑dfs求深度过了50%,改了1小时,想不出来就交了。
- 前三题简单AC说明。
T1
- 求比大的后一个出现位置相隔距离
是300的范围,直接暴力了
T2
- 数字成环形,可以任意交换,求相邻差的绝对值最大值最小
排了个序,用deque奇偶分别前后插入,然后直接求。
T3
- m次两种操作
1 x y x y必须是放在一起 2 x y x y不可以放在一起
必须满足操作1,求有多少个操作2无法进行。 - 读了题就知道是离散化+并查集
- 第一次不知道为什么只有80,后来换了个写法AC了
T4
可能是操作写多了,只过了50%。
大致题意:
有一个字符串数组,按照字典序排序,如果字符串,可以通过增加,删除,修改一个字母得到字符串,则称为可转换。求一个字符串序列,这个序列的当前一个可以通过前一个转换,并且单词来源于给出的数组里, 求这个序列的长度。
每个字符串长度 <= 16
最多3000个字符串
check(i, j) 检查字符串i和j,然后建边,跑dfs求深度。50%
有大佬找到原题,uva10029,解法是LIS+hash,复杂度,个人感觉难度有点Div2 D~E的难度,但确实是自己菜了,所有没写出来...
0308 update: 好像这题数据有点问题,nb群友里几个金牌的也没有ac
- 最后但愿给个面试机会...