8.19
T1
题目大意:
给定一个K*K的正方形,n个询问,每个询问要求找出同一行内未被标记的m长区间。规则:优先选到中心的距离和最小的;若有多个,选行号小的;仍有多个,选左端点小的。如果没找到,输出-1。
原思路:
把二维压成一位,方便一维计算,其他的偏暴力,忘写中心的距离和最小的了,没判断是否同一行。
正解:
直接暴力是可以的,暴力修改,暴力查找区间
T2
题目大意:
给定一个数组,判断是否每个[i,j]的区间都满足不等式:
原思路:
用线段树维护最大值和和,然后暴力枚举每个区间求出答案
正解:
发现如果使
然后用线段树维护前缀和最大值和前缀和最小值。
然后再有线段树找出左边第一个大于
再看每个以
T3
题目大意:
给定一个无向图,k次操作,每次删掉编号l~r的边,然后计算图中的连通分量数量,再连回来。
原思路:
由于数据小,可以暴力,每次操作把不要删的边的左右端点用并查集连接,然后算出有多少个
正解:
就是上面的暴力思路。
T4
题目大意:
给定一个带权树和一个数组q,求出有多少个顶点对满足路径最大值
原思路:
暴力。
正解:
很像上次的T4。
将所有边存下来,然后按最大值排序,每次找这个边权最大值有多少个点需要经过多少次,就是左边点的个数