这道题显然是一道区间信息维护的题目,所以我们考虑使用线段树。如果没有修改一个点的限制,那么我们只需要开一个记录gcd的线段树即可。对于修改一个点的限制,我们这么考虑:如果(一串区间的gcd值 mod 题目给出的v) !=0,那么这个区间里至少有一个数不含v这个因数,所以我们一直用线段树二分查找这个区间,最终肯定会找出一些不含因数v的点。如果这个点只有一个,那我们修改这个点即可;如果有两个,那就不可能完成,输出NO。
英文题面,题目大意:Bash喜欢对数列进行操作。第一种操作是询问l~r区间内的gcd值是否几乎为x,几乎为表示能否至多修改一个数达到。第二种操作是将ai修改为x。总共Q个询问,N个数。这道题显然是一道区间信息维护的题目,所以我们考虑使用线段树。如果没有修改一个点的限制,那么我们只需要开一个记录gcd的线段树即可。对于修改一个点的限制,我们这么考虑:如果(一串区间的gcd值 mod 题目给出的v...