CF1553G

注意到答案不超过 \(2\)

对于询问 \(s,t\)copy(s),copy(t) 之后存在 \(s\to s' \to t' \to t\) 的路径(因为 \(s',t'\) 都是偶数)。

先对于每个质数开一个点,用并查集维护。

我们把点的路径换成质数的路径。

那么如果 \(c|a,b|a~(b,c\in Prime)\) 则并查集上合并 \(c,b\)

那么如果 \(s,t\) 的所有质因数都在一个集合里,那答案就是 \(0\)

考虑什么时候答案是 \(1\)

\(b_i=a_i+1\),那新开一些边,\(b_i\) 的质因数两两连边,也就表示复制一个 \(i\) 能连上一些质数点。

那么如果 \(set(s)\to set(t)\) 有一条边,那么答案就是 \(1\)

否则答案就是 \(2\)

代码直接在我号提交记录里看吧()

posted @ 2021-11-30 20:29  cmll02  阅读(108)  评论(0)    收藏  举报