2020-team1-071
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
[/wiki/2020-team1 返回]
== 概述 ==
solved: 8/14 dirt: 33%
rank: 46
[[Image(Rank.png,800px)]]
== 总结 ==
== 题解 ==
A: 对于每一位,假设这一位操作结果有>=3个1,将结果flip一下变成<=1个1,然后讨论1的数量分别是0,1,2三种情况
1的数量为0时,这一位随便怎么搞都行,反正结果一定是0
1的数量为1时,可以通过对A,B串这一位的变换,使得变成只有1和1运算时为1,就变成与操作
1的数量为2时,假设是类似10,11这2种运算得1,即结果一定是a,可以变成与操作,b这一位强制为1
假设不是上面那种操作,则一定可以通过变换将这一位变成异或操作。
然后做fwt即可。
B:
C: 打表观察相邻两项的差值,发现是-1,0,4,5,...,85,...,21845,...,相邻两个关键值求比值,发现是5,17,257,都是2^k^+1形式
D:
E:
F:
G: 打表观察,奇数0,偶数2^n-2^*(n-1)!!*(n/2)^(n/2-2)^
H: 将所有点去掉x^2^*y^2^的势能后答案相当于路径上整点到原点距离的平方和;尽量走y=x附近或者直接曼哈顿距离过去两者取较短距离
I: 答案和两人操作无关
J: 不是二分图->no,否则每个连通块取较小的那一半
K:
L:
M: 考虑gcd(a_i,a_{i-1})这个序列,每次让它新加入的元素尽量小且满足条件,最后取ai=相邻两个gcd之积
N:
[/wiki/2020-team1 返回]
概述
solved: 8/14 dirt: 33%
rank: 46

总结
题解
A: 对于每一位,假设这一位操作结果有>=3个1,将结果flip一下变成<=1个1,然后讨论1的数量分别是0,1,2三种情况
1的数量为0时,这一位随便怎么搞都行,反正结果一定是0
1的数量为1时,可以通过对A,B串这一位的变换,使得变成只有1和1运算时为1,就变成与操作
1的数量为2时,假设是类似10,11这2种运算得1,即结果一定是a,可以变成与操作,b这一位强制为1
假设不是上面那种操作,则一定可以通过变换将这一位变成异或操作。
然后做fwt即可。
B:
C: 打表观察相邻两项的差值,发现是-1,0,4,5,...,85,...,21845,...,相邻两个关键值求比值,发现是5,17,257,都是2k+1形式
D:
E:
F:
G: 打表观察,奇数0,偶数2n-2*(n-1)!!*(n/2)(n/2-2)
H: 将所有点去掉x2*y2的势能后答案相当于路径上整点到原点距离的平方和;尽量走y=x附近或者直接曼哈顿距离过去两者取较短距离
I: 答案和两人操作无关
J: 不是二分图->no,否则每个连通块取较小的那一半
K:
L:
M: 考虑gcd(a_i,a_{i-1})这个序列,每次让它新加入的元素尽量小且满足条件,最后取ai=相邻两个gcd之积
N:
附加文件
- Rank.png by suika_predator