A. Gregor and Cryptography
考虑构造两个数 a , b a,b a,b,使得 p m o d a = 1 p \mod a =1 pmoda=1 且 p m o d b = 1 p \mod b =1 pmodb=1,那么只需要找到两个整除 p − 1 p-1 p−1 的数,由于 p > 5 p>5 p>5 且 p p p 是质数,所以肯定有至少两个大于 1 1 1 的因子。
B. Gregor and the Pawn Game
不喜欢这种类型的题(主要就是 CF div.2 的 B )
显然由于 2 2 2 到 n − 1 n-1 n−1 行没有敌人所以只能向上,所以只有第 1 1 1 行和第 n n n 行有用,然后就按着他说的方法暴力分配就好了,我也不知道为啥是对的,别骂了。
C. Web of Lies
挺有意思一道题,如果看到这种模型就往图论上想就直接 GG 了,毕竟 n ≤ 2 × 1 0 5 n \le 2\times 10^5 n≤2×105 还又是删除又是加边的。考虑从第 1 1 1 个节点开始讨论,显然它这个节点没有任何相邻节点比它小,那么它最终存留当且仅当它是一个单独的连通分量。
然后同样的来看第 2 2 2 个节点,如果它和 1 1 1 节点相邻,那么 1 1 1 节点就会被干掉,所以它也没有一个与之相邻的节点比它小,所以 2 2 2 节点存留当且仅当它不跟任意一个比它大的节点直接相连。
以此类推可以得到,一个节点能存留当且仅当它不跟任意一个比它大的节点直接相连。然后就很简单了。
D. Integers Have Friends
套路的数据结构题。注意到一个区间 [ L , R ] [L,R] [L,R] 合法的必要条件是有 gcd ( ∣ a i − a i − 1 ∣ ) > 1 \gcd(|a_i-a_{i-1}|)>1 gcd(∣ai−ai−1∣)>1 ( L < i ≤ R L < i \le R L<i≤R),为什么呢?是基于这样一个结论:当 a a a, b b b 模 m m m 同余时,不妨设 a > b a>b a>b,肯定有 m ∣ a − b m | a-b m∣a−b。
这样一个东西显然可以用 ST 表维护,答案显然具有单调性,然后二分一下区间长度就可以了。