省选模拟88
A. 或许
稍微观察一下或者打个表可以发现实际上就是动态维护线性基的大小,支持插入和删除。
删除首先想线段树分治然后被卡了。
所以考虑离线,处理出每个元素被删除的时间,在线性基中维护这一位被删除的时间,并且满足从高位到低位删除越来越早。
这样最先删除的一定是低位,对高位没有影响,可以直接删除。
然后考虑插入,在正常插入的基础上,若当前位的删除时间比插入的数早同样可以替换。
B. 这就是
考虑状压,枚举当前已经确定的集合。然后枚举一个新的集合,满足这个集合选择的数都相等。
为了保证不重不漏且方便计数,可以考虑钦定最小的点一定在新集合中。
枚举子集转移即可。
C. 人生吧
看到部分分的提示,可以想到莫队。
求gcd可以想到分别对每个质因子考虑,然后推一推式子可以做到$Olog$扩展。是可以卡掉的然而数据似乎是随机的。。。
然后考虑优化这个东西。根号分治,对于大于根号的质因子暴力扩展,小质因子预处理前缀和暴力统计即可。