A. Musical Puzzle
字符串 \(s\) 的不同的长度为 \(2\) 的子串个数就是答案
可以用 set 处理
B. Restore the Weather
将 \(a\) 数组排序后,在 \(b\) 数组中找到第一个大于等于 \(a_i-k\) 的元素与 \(a_i\) 对应即可
可以用 multiset 实现(用 multiset 自带的 lower_bound()
比较好,据说用外部的 lower_bound()
来求时,复杂度是 \(O(n)\))
C. Vlad Building Beautiful Array
显然,只有减去奇数才能改变奇偶性
那么我们预处理出最小奇数,然后拿每一个偶数去减它,如果变成负数就无解;反之有解
D. Flipper
我们肯定优先让 \(n\) 在最前面,若 \(n\) 已经在最前面,则让 \(n-1\) 在最前面
因此翻转区间右端点 \(r\) 已经固定,枚举左端点 \(l\) 的位置取字典序最大即可
E. Round Dance
把关系看成边,显然每场舞会其实就是一个环,所以其实我们只需要判断最少/最多可能存在多少个环即可
用并查集维护一下有多少个连通块,并且维护每个连通块中有多少个点和多少条边,注意处理重边
如果点数等于边数,那么这个连通块就固定了,一定就是这些点
否则连通块就是一条链,点数等于边数加一,可以是每条链都自成一个环也可以是所有链链接一起形成一个环,记得特判一下链数为 \(0\) 的情况
F. Ira and Flamenco
显然子序列从小到大排序后在数轴上连续,统计原数组中出现的元素与元素出现次数,记 \(a_i\) 为去重后第 \(i\) 小的元素,\(b_i\) 为原数组中 \(a_i\) 的出现次数
当 \(a_{i-m+1}=a_i-m+1\) 时,区间 \([i-m+1,i]\) 满足条件
维护 \(b_i\) 前缀积即可
G. Ksyusha and Chinchilla
(待补)
标签:连通,题解,874,元素,即可,数组,Div,Round From: https://www.cnblogs.com/cantorsort2919/p/17623980.html