CF1285F Classical?
题意:给出数组
特判
显然
接下来,把他们都除以
从大到小枚举数,依次考虑
若发现有
继续枚举时,只会枚举到 ,此时和某个满足
所以,可以舍弃
具体实现中,使用(从小到大的)单调栈,加入一个数
问题在于:如何判断栈中是否存在于
我们需要一个数据结构,维护集合
维护
查询也是枚举因数。
单个问题复杂度为
总复杂度为
改进:
对于任意
观察到
题意:给出数组
特判
显然
接下来,把他们都除以
从大到小枚举数,依次考虑
若发现有
继续枚举时,只会枚举到 ,此时和某个满足
所以,可以舍弃
具体实现中,使用(从小到大的)单调栈,加入一个数
问题在于:如何判断栈中是否存在于
我们需要一个数据结构,维护集合
维护
查询也是枚举因数。
单个问题复杂度为
总复杂度为
改进:
对于任意
观察到