大致题意是给定N,求出最小的整数A满足A*X*X = N (X也为整数,1 <= N <= 10^18)
思路就是枚举
但是有一个小技巧
如果直接枚举的话,次数是10^9数量级
很容易TLE
而利用等式的特性,可以降低枚举次数的数量级
先将A从1开始枚举到10^6,如果没有符合条件的
那么说明此时X一定小于10^6
于是将X从去10^6开始枚举到1,一定能找到答案
本文介绍了一种求解特定形式方程A*X*X=N的方法,通过巧妙地减少枚举次数来避免超时问题。首先枚举A直到10^6,若未找到解,则逆向枚举X从10^6到1,确保找到最优解。
大致题意是给定N,求出最小的整数A满足A*X*X = N (X也为整数,1 <= N <= 10^18)
思路就是枚举
但是有一个小技巧
如果直接枚举的话,次数是10^9数量级
很容易TLE
而利用等式的特性,可以降低枚举次数的数量级
先将A从1开始枚举到10^6,如果没有符合条件的
那么说明此时X一定小于10^6
于是将X从去10^6开始枚举到1,一定能找到答案

被折叠的 条评论
为什么被折叠?