[CodeForces] Round #628 (Div. 2)

A.EhAb AnD gCd

题意:给定一个\(x\),求构造一个\(a,b\)使得\(gcd(a,b)+lcm(a,b)=x\)
题解:我们让\(a|b\),那么\(gcd(a,b) = a\)\(lcm(a,b)=b\),那么我们只需要满足\(a+b=x\)并且\(a|b\),显然当\(a=1,b=x-1\)等式恒成。

B.CopyCopyCopyCopyCopy

题意:\(a\)数组是\(b\)数组的循环节,你需要输出\(b\)的严格最长上升子序列。
题解:显然答案就是\(a\)数组出现的数字个数(出现多次算\(1\)次)。

C Ehab and Path-etic MEXs

题意:给你一棵树,让你在每条边上填\([0,n-2]\)的数字(并且每个数字只能出现\(1\)次),请你构造一种方案使得最大的 \(mex(u, v)\)最小。
题解:显然\(0\)这个数至关重要,如果一条路径不经过\(0\)边,那么他的\(mex\)就是\(0\),所以我们要将\(0\)填在经过较少的边,那么显然就是连接叶子的边。
\(0\)填完了,后面的数也依次类推,填在度数较小的边上,这样贪心正确性显然。

D Ehab the Xorcist

题意:给定数字\(u\)\(v\),求最短长度的数组,使得他们的和为\(v\),异或和为\(u\)
题解:我们先考虑无解的情况,因为异或是不进位的加法,所以始终有\(u \leq v\),所以当\(u > v\)时,必然无解。
\(a,b\)奇偶性不同时,也必然是无解的,也是因为异或是不进位的加法,但是最后一位始终是相同的,也就是奇偶性相同的。
然后我们考虑如何构造一组解,\((a, a, u)\),这种答案,异或和显然为\(u\),那么我们只需要让\(a+a+u = v\)就行了,得到长度为\(3\)的解\((\frac{v-u}{2},\frac{v-u}{2},u)\)
既然构造了长度为\(3\)的通解,我们只要考虑长度为\(2\)\(1\)的情况。
那么假设\(u \bigoplus \frac{v-u}{2} = u\),那么答案长度就缩短为\(2\)
\(u=v\)的时候,答案长度就是\(1\)

E Ehab's REAL Number Theory Problem

题意:给定长度为\(n\)的序列\({a_n}\)(\(a_n\)至多有\(7\)个因数),求从序列至少选多少个数,使他们的乘积为完全平方数。
题解:\(a_n\)至多有\(7\)个因数,这句话可以被转化,我们考虑\(a_n\)的质因子个数,假设质因子数量为\(3\)的话,那么\(a_n\)的因子数量至少为8。所以\(a_n\)至多有\(2\)个质因子。
对于\(a_x\),分解方式就是\(1*p\)或者\(p*q\),我们可以建图,将两个数连接一条边,那么答案就是最小环的大小,我们可以\(\text{BFS}\)求出最小环的大小。

F Ehab's Last Theorem

题意:给定一个\(n\)个点\(m\)条边的图,要求一个包含\(\lceil \sqrt{n} \rceil\)的点的独立集,或者点数量大于\(\lceil \sqrt{n} \rceil\)的点集。
题解:我们可以考虑\(dfs\)树,\(dfs\)树有一个性质就是非树边连接一个点与其后代,那么如果这个返回边与原边所组成的点集合大小\(\geq \lceil \sqrt{n} \rceil\)的话,那么就直接输出这一组解
否则如果没有任何一个环满足的话,那么就必然有\(\lceil \sqrt{n} \rceil\)的点的独立集,这个证明比较简单,我就不多说了。
时间复杂度\(\Theta (n)\)

posted @ 2020-03-16 00:34  Hock  阅读(127)  评论(0编辑  收藏  举报