구현, 수학
[백준] 1929. 소수 구하기 풀이
hch06
2025. 2. 2. 20:21
https://www.acmicpc.net/problem/1929
isSosu 함수를 만들어서 해당 값이 소수인지 검사하는 함수를 만든 후 이를 이용했다.
우선 m부터 n까지의 숫자를 isSosu함수를 이용해 소수인지 확인한다.
확인할때 나누는 숫자는 root(들어온 값)까지만 확인하면 되므로 (나누는수)*(나누는수)가 들어온 값 이하인 범위에서 나누어 보도록 제한하였다. 만약 값이 소수라면 그 값을 출력한다.
C
더보기
더보기
#include <stdio.h>
int isSosu(int v){
for(int i = 2; i*i <= v; i++)
if(v % i == 0) return 0;
return (v == 1) ? 0 : 1;
}
int main(){
int m, n; scanf("%d %d", &m, &n);
for(int i = m; i <= n; i++)
if(isSosu(i)) printf("%d\n", i);
}
Python
더보기
더보기
def isPrimeNum(v):
i = 2
while i*i <= v:
if v % i == 0: return 0
i += 1
return 0 if v == 1 else 1
m, n = map(int, input().split())
for i in range(m, n+1):
if isPrimeNum(i): print(i)