首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
CF633G
】的更多相关文章
CF633G
题目大意: 给你一棵树,根节点为1 有2种操作,第一种是给u节点所在的子树的所有节点的权值+x 第二种是询问,假设v是子树u中的节点,有多少种质数满足av = p + m·k 做法:维护子树信息显然dfs序,考虑用线段树维护一个区间内有哪些值 每个区间用一个bitset维护 这里有一个小技巧,bitset都+x然后%m,可以bt2[k]=(bt2[k]<<y)|(bt2[k]>>(m-y)); 然后求出区间的bitset,和质数的bitset&一下,求1的个数即可 代码如下…