10.30XJ模拟赛
T1:
感觉是神仙结论题,打爆搜状压跑了
题目看错了。
首先只能有一个联通块,然后我们就随便删了
T2:
博弈论。发现每个人只有添一个数和零个数的情况。如果没有这个限制,那我们就是偶数个数字就是先手败,奇数就是后手败。如果一开始是偶数,先手就会将它继续搞到偶数,也就是变成1。额,考虑转化为nim游戏。发现这就是nim游戏。我们搞出前,当前局面的sg值为所有石子的异或。不会,继续前一个想法。对于一个>1的数,它可以被操作两次,对于==1可以被操作一次,然后就变成nim了
T3:
将右边的式子移到左边,那么我们要求的就变成了求一个子序列使它和为0。对于一段区间l,r那么就是l+1,r-1中,子序列和为0的方案数。然后就是\(n^{3}a_{i}\)。有左端点和右端点,我们可以想到右端点扫过去,然后统计左端点的答案。所以我们将dp数组的定义修改为和为i的方案内合法左端点的数量之和,这样扫过去的时候就可以统计了。对于0的情况,我们可以把他算进去,且不会重复,等式依然成立。
T4:
因为T1太唐导致浪费了2h,下午来补一下。最小次数是n,所以你要在[l,r]中找(r-l+1)个区间,使这些区间的mex最大。探究性质,这些区间加加减减要搞出每一个位置。这些区间的左右端点的集合为{l,……,r},然后会有一些。wc,这些是二元组,我们连边,从r连向l-1。发现如果这个能形成一颗树(点在[l-1,r]之间),这就是可行的,有点神奇。所以有一个重要结论,就是如果有n-1个二元组,然后数组成的集合为{1 …… n},那么这就是一棵树。所以我们做最大生成树,每次选最大的边,然后选。不会啊。因为大的区间的mex大于等于属于它的区间的mex,所以我们并不会选(x,y)(x,y>=l&&x,y< r)的边。所以我们先选l-1到r,然后我们每次就在l到r-1里每次选min(max(f(l,i),f(i,r)))。首先将询问离线,我们扫描线,对于r排序,然后看左端点。我们找到使这个最小值出现的位置,因为f(i,r)单调不增,f(l,i)单调不降,所以通过二分分出来这个点就可以了。区间mex的话通过主席树+线段树上二分求出。哦,思路貌似有点假。首先利用前缀和转化成\(s_{r}-s_{l-1}\),我们知道了\(s_{0}=0\)。我们的未知数有n个,所以要n个方程去解。然后

浙公网安备 33010602011771号