摘要:
先考虑B国。容易发现a xor b mod 2=0即二进制末位相同,那么可以据此将所有人分成两部分,每一部分各自是一个完全图。然后再将a or b有奇数个1的边连上,现在需要求的就是这样一个图里的最大团。我们知道最大团=反图最大独立集,这个图的反图显然是一个二分图,那么跑二分图匹配就可以求出这个了。 阅读全文
posted @ 2018-09-08 17:47
Gloid
阅读(143)
评论(0)
推荐(0)
摘要:
不妨把求φ抽象成把将每个位置上的一个小球左移一格并分裂的过程,那么即求所有球都被移到1号格子的步数。 显然要达到1必须先到达2。可以发现每次分裂一定会分裂出2号位的球,因为2以外的质数一定是奇数。以及,每次移动至多将一个2号位的球移至1号位。 于是我们只要数出每个位置能将几个球分裂至2号位就可以了。 阅读全文
posted @ 2018-09-08 15:10
Gloid
阅读(153)
评论(0)
推荐(0)
摘要:
如果能够把所有区间内第二次出现某颜色的位置标记出来,树状数组查询一下就可以了。 考虑离线。按左端点从小到大排序,不断移动左端点并更新第二次出现的位置。 阅读全文
posted @ 2018-09-08 12:37
Gloid
阅读(118)
评论(0)
推荐(0)
摘要:
显然做个前缀和之后变成询问区间内两个数异或最大值。 一种暴力做法是建好可持久化trie后直接枚举其中一个数查询,复杂度O(nmlogv)。 观察到数据范围很微妙。考虑瞎分块。 设f[i][j]为第i个块中的数和第j个数的异或最大值。显然建一棵可持久化trie就可以以O(n√nlogv)的复杂度搞出来 阅读全文
posted @ 2018-09-08 02:12
Gloid
阅读(149)
评论(0)
推荐(0)

浙公网安备 33010602011771号