약수 구하기

2022. 10. 6. 13:28
def find_num_divisor(n):
	divisor_list = []
	for i in range(1, int(sqrt(n)) + 1):
		if n % i == 0:
			divisor_list.append(i)
            if i != n / i:
				divisor_list.append(int(n / i))
        
	return list(set(divisor_list))

수를 입력하면 해당 수의 약수들을 리스트 형태로 반환함.

시간복잡도는 O(루트N).

알고리즘에 대한 설명은 링크 참조

'코딩테스트 > 메모' 카테고리의 다른 글

소인수분해  (0) 2022.10.19
피보나치 수  (0) 2022.10.13
두 수의 최대공약수와 최소공배수구하기  (0) 2022.10.06
소수 판별  (0) 2022.10.06
유클리드 거리와 맨해튼 거리  (0) 2022.10.06

BELATED ARTICLES

more