擅长:python、mysql、java
<p>我认为模运算符很适合这个问题:</p>
<pre><code>import math
def factint(n):
pos_n = abs(n)
max_candidate = int(math.sqrt(pos_n))
for candidate in xrange(max_candidate, 0, -1):
if pos_n % candidate == 0:
break
return candidate, n / candidate
</code></pre>