这是本文档旧的修订版!
2020.8.1 2020牛客暑假多校训练营(第七场) prob:5/5/10
rank:46/1090
2020.8.3 2020牛客暑假多校训练营(第八场) prob:5/5/11
rank:16/684
2020.8.6 2020-2021 BUAA ICPC Team Supplementary Training 02 pro: 3/3/11
本周无
2020.8.2 Atcoder Beginner Contest 174 prob:6/6/6
rank:433
本周无
本周无
本周无
本周无
2020.8.2 Atcoder Beginner Contest 174 prob:6/6/6
rank:281
本周无
林星涵:
题目大意: 在树上,支持以下三种操作:
1、选定一个点 $i$,别的点 $j$ 的价值都加上 $w[i]-dis(i,j)$。
2、选定一个点,它的价值值为 $min(价值,0)$。
3、询问某点的价值。
数据范围:$1 \le n(点数)、m(询问数) \le 5e4$
解题思路:经过分析后我们可以发现,一次$1$操作,对于任何一个点来说,权值的变化都是 $w-dep[x]-dep[p]+2*dep[k]$ (k是对于任何一个点来说从选定点 $x$ 到根的路径上最近的祖先).对于 $w-dep[x]$ 来说,所有点都是一样的,用一个全局的 $sum$ 来记录就可以。对于 $dep[p]$ 这部分同理记录次数,$2*dep[k]$ 这部分则需要利用树链剖分每次从 $x$ 到根每个点都$+1$,最后查询点时查询到根路径上的和来得到,对于二操作,我们单开一个新数组来记录操作对原值的影响就可以了。
推荐理由:树链剖分一类比较经典的有关深度的操作。
陶吟翔:
题目大意:
数据范围:
解题思路:
推荐理由:
郭衍培:
题目大意:给定d。求满足以下要求的序列a的个数:序列恒正且递增,前缀异或和递增,最大项小于等于d。
数据范围:$1\le d\le 10^9$
解题思路:设$h(x)$为二进制下x的最高位1的位数。设前i项异或和为$b_i$。由于a序列递增,显然有$h(a_i)\ge h(b_{i-1})$。若$h(a_i)=h(b_{i-1})$,则$h(b_i)<h(b_{i-1})$,不成立。因此$h(a_i)>h(b_{i-1}),h(a_i)=h(b_i)>h(b_{i-1})$。因此有$h(a_i)>h(a_{i-1})$。显然,这是充要条件。设c[k]为$h(x)=k,x\le d$的个数。然后dp一下即可
推荐理由:初看此题感觉不好想,但发现结论后就不难了