약수를 빠르게 구하는 알고리즘

1. 설명 어떤 자연수 n에 대하여 n = a*b가 되는 두 자연수 a,b를 n의 약수라고 한다. 이러한 a,b는 반드시 존재한다. 최소 (1,n)이 존재한다는 것. n의 약수를 프로그래밍으로 어떻게 구할까? 가장 쉽게 생각하는 방법은 n을 1부터 n까지 각각 나눠보면서 나누어 떨어지는 수를 찾는 것이다. 그런데 n이 너무 크면, 10억만 되어도 너무 오래걸린다는게 문제 ----------------------------------------------------------------------------------------------------------------------- 그런데 n = a*b에서 a,b의 관계를 생각해보면 a > b, a < b, a = b 3가지 경우가 가능하다. 근데 사실 ..