본문 바로가기

에라토스테네스의 체2

소수 구하는 방법 (Java) 약수 알고리즘 (Java) 17427번: 약수의 합 2 두 자연수 A와 B가 있을 때, A = BC를 만족하는 자연수 C를 A의 약수라고 한다. 예를 들어, 2의 약수는 1, 2가 있고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24가 있다. 자연수 A의 약수의 합은 hyeon-z.tistory.com 이전에 작성했던 약수 알고리즘을 바탕으로 설명할 것이다. 방법 1 소수는 1과 자기 자신만을 약수로 가지기 때문에 2부터 자기 자신 - 1까지 반복문을 돌면서 나누어 떨어지는 수가 없다면 소수이고, 나누어 떨어지는 수가 있다면 소수가 아니다. boolean solution(int num) { // 1은 소수 x if (num == 1) { return false; } // 2부터 자기 자신-1.. 2023. 5. 18.
약수 알고리즘 (Java) N의 약수의 개수을 구하려면 어떻게 해야 할까? 방법 1 1부터 N까지 모든 수를 돌며 나누어 떨어지는 수의 개수를 더한다. int N = 16; int result = 0; for (int i = 1; i [N/3] 7 이하의 자연수 중에서 4를 약수로 가지는 수의 개수: 1 (4) => [N/4] 7 이하의 자연수 중에서 5를 약수로 가지는 수의 개수: 1 (5) => [N/5] 7 이하의 자연수 중에서 6을 약수로 가지는 수의 개수: 1 (6) => [N/6] 7 이하의 자연수 중에서 7을 약수로 가지는 수의 개수: 1 (7) => [N/7] 약수가 아닌 수들을 계산하지 않고 확실히 약수인 개수만 찾기 때문에 빠르게 구할 수 있다. int N = 7; int result = 0; for (int i.. 2023. 5. 17.