본문 바로가기

소수

10. 200만 미만의 소수의 합을 구해 The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17. Find the sum of all the primes below two million. 10미만의 소수들의 합은 2 + 3 + 5 + 7 = 17이다. 200만 미만의 소수들의 합을 구하여라. 짝수인 소수는 2밖에 없으니 sum=2로 초기화 해주고 홀수만 확인합니다. is_prime함수도 홀수만 확인하니 i=3부터 나머지를 확인합니다. #include #include int is_prime(int a) { int i, sqrn=(int)sqrt(a); for(i=3; i 더보기
7. 10001번째 소수를 찾아 By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13. What is the 10001st prime number? 첫 여섯개의 소수를 나열하면 2, 3, 5, 7, 11, 13 이다. 우리는 6번째 소수가 13이란 걸 안다. 10001번째 소수를 찾아라 #include #include #include #include int prime[10002]; int is_prime_0(int a)//소수목록으로 확인 { int i; for(i=1; prime[i]; i++) if(a%prime[i]==0) return 0; return 1; } int is_prime_1(int a)//포인.. 더보기
3. 가장 큰 소인수 찾기 The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143 ? 13195의 소인수는 5, 7, 13, 29다. 600851475143의 가장 큰 소인수는 무엇인가? 소수 판단 알고리즘처럼 600851475143의 제곱근에서 수를 감소하며 소인수인지 확인하면 됩니다. 가장 큰 소인수가 2일 리는 없으니 홀수만 검사합니다. #include #include int is_prime(int n) { int i, sqrn; sqrn = (int)sqrt(n); for (i = 2; i 더보기