CF1600~1700
1731C
\(a\) 的质因子为奇数个,当且仅当 \(a\) 是平方数。
我们考虑如何处理出有多少段的异或和为平方数。
枚举平方数 \(p\),枚举左端点 \(l\),问题就变成了有多少 \(r\) 使得 \(\oplus_l^ra_i=p\),处理出异或前缀和 \(s_i=\oplus_1^ia_i\),查询有多少 \(r\) 使得 \(s_r\oplus s_{l-1}=p\) 即可。变形成 \(s_r=p\oplus s_{l-1}\),这个东西可以递推处理出来。时间复杂度 \(O(n\sqrt{n})\),注意数组开大一点,多处理一点平方数。
1730B
考虑二分代价 \(k\),\(k\ge\max t_i\)。
显然每个点的代价不能超过 \(k\)。将绝对值拆开得到:
\[-k+t_i+x_i\le x_0\le k-t_i+x_i
\]
对于 \(n\) 组不等式求解集即可。二分过程中记录一下答案。
卡了一会,一开始没想到暴力求解集就行。
时间复杂度 \(O(n\log n)\)。
1971F
这场打过,场切了。
没啥训练价值,不写题解了。
1970C2
特殊版本:\(t=1\) 且是一棵树。
简单博弈论。设从 \(s\) 开始游戏,将图变成一棵以 \(s\) 为根的树,显然,叶子是必败的。
对于其它点:
-
若它的所有儿子都是必胜的,它是必败的。
-
否则,它是必胜的。
CF 炸了,在 vjudge 上交的。