这道题不用太多思考,看懂题就行,考试的时候正常发挥,快速打完了。
z = x ∗ y ∗ g c d ( x , y ) z=x*y*gcd(x,y) z=x∗y∗gcd(x,y)
z / x = y ∗ g c d ( x , y ) z/x=y*gcd(x,y) z/x=y∗gcd(x,y)
这 也 就 意 味 着 我 们 只 需 要 枚 举 y 和 g c d ( x , y ) 其 中 之 一 即 可 求 出 另 外 一 个 。 这也就意味着我们只需要枚举y和gcd(x,y)其中之一即可求出另外一个。 这也就意味着我们只需要枚举y和gcd(x,y)其中之一即可求出另外一个。
那 枚 举 哪 个 更 好 ? 想 一 想 , g c d ( x , y ) 肯 定 要 比 y 小 , 于 是 枚 举 g c d ( x , y ) 是 最 好 的 选 择 。 那枚举哪个更好?想一想,gcd(x,y)肯定要比y小,于是枚举gcd(x,y)是最好的选择。 那枚举哪个更好?想一想,gcd(x,y)肯定要比y小,于是枚举gcd(x,y)是最好的选择。
然后就动手敲代码……经过对拍测试,这份代码总的来说速度不错,但是不能A。
设 d = g c d ( x , y ) , x = p d , y = q d , z = p q d 3 . 设d=gcd(x,y),x=pd,y=qd,z=pqd^3. 设d=gcd(x,y),x=pd,y=qd,z=pqd3.
由 g c d 定 义 得 : p 与 q 互 质 . 由gcd定义得:p与q互质. 由gcd定义得:p与q互质.
∴ p 2 与 q 互 质 . ∴p^2与q互质. ∴p2与q互质.
现 在 已 知 p d 与 p q d 3 也 就 是 x 和 z , 需 要 求 出 y = q d . 现在已知pd与pqd^3也就是x和z,需要求出y=qd. 现在已知pd与pqd3也就是x和z,需要求出y=qd.
q d = p q d 3 / p d / d , 于 是 我 们 只 需 要 求 出 d . qd=pqd^3/pd/d,于是我们只需要求出d. qd=pqd3/pd/d,于是我们只需要求出d.
运 用 p 2 与 q 互 质 的 性 质 , 可 以 构 造 出 d 2 = g c d ( p 2 d 2 , q d 2 ) = g c d ( x 2 , z / x ) . 运用p^2与q互质的性质,可以构造出d^2=gcd(p^2d^2,qd^2)=gcd(x^2,z/x). 运用p2与q互质的性质,可以构造出d2=gcd(p2d2,qd2)=gcd(x2,z/x).
则 d = s q r t ( g c d ( x 2 , z / x ) ) , 最 后 需 要 判 断 是 否 合 法 . 则d=sqrt(gcd(x^2,z/x)),最后需要判断是否合法. 则d=sqrt(gcd(x2,z/x)),最后需要判断是否合法.
做的时候推不出正解,只能尽可能的减小时间复杂度,拿了70分,不大满意,下次恶补下数学。
我能想到的只有三个字母:
D F S DFS DFS
时间复杂度不用算都知道会爆炸……
待学习……
T1 国王比赛 | T2 数学游戏 | T3 字符串 | 总分 | |
---|---|---|---|---|
洛谷自测成绩 | 100 | 40 | 30 | 170 |
官方公布成绩 | 100 | 70 | 30 | 200 |
怎么……官方数据比民间数据还水……
总的来说,考的比较满意。