728x90

분류 전체보기 333

[Math&Algorithm] 소수?

▷소수란? : 약수가 1과 자기 자신 밖에 없는 수 : 2보다 크거나 같고, N-1보다 작거나 같은 자연수로 나누어 떨어지지 않는 자연수 소수의 예) 2, 3, 5, 7, 11, 13, 17, 19, 23, ... ▷소수를 구하는 방법? ① 자연수 N의 가장 큰 약수는 N/2보다 작거나 같으므로 2부터 N/2까지 나눠보기. ② 자연수 N을 루트 N까지 나눠보기. Why? N이 소수가 아니라면 N=a X b 로 표현할 수 있다. (a와 b는 자연수) (이 때, a와 b는 a b 라면 두 수를 바꿔서 항상 a

[Math&Algorithm] 최대공약수? 최대공배수?

▷최대공약수란? : GCD(Greatest Common Divisor) : 두 수 A와 B의 공통된 약수 중에서 가장 큰 정수 ▷구하는 방법? ① 2부터 min(A, B)까지 모든 정수로 나눠서 나머지가 0이 되는 최대 정수 찾기. ② 유클리드 호제법(Euclidean algorithm)으로 찾기. : a를 b로 나눈 나머지를 r 이라고 했을 때, GCD(a, b) = GCD(b, r) 이 성립한다. → 재귀로 구현 가능 : r이 0이면 그 때의 b가 최대 공약수 이다. ex) GCD(16, 12) = GCD(12, 4) = GCD(4, 0) = 4 → GCD(a, b) = GCD(b, a%b) 로 표현 됨 ▷최대공배수란? : LCM(Least Common Multiple) : 두 수의 공통된 배수 중에..

728x90