본문 바로가기
Problem Solving

[BOJ 1978] 소수 찾기

by Ladun 2019. 3. 16.

https://www.acmicpc.net/problem/1978

 

1978번: 소수 찾기

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

www.acmicpc.net


위 문제를 풀기 위해서는 '에라토스테네스의 체'를 알고 있다면 쉽게 풀 수 있다.

위 알고리즘을 통해 소수를 찾은 후 N개의 수를 입력 받으며 소수인지 아닌지 확인하면 된다.

 

'에라토스테네스의 체'의 자세한 내용은 아래 URL을 통해 볼 수 있다.

 

https://ladun.tistory.com/10?category=323065


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
 
int arr[1001];
 
void PrimeNumSetting()
{
 
   arr[1= 1;
   for(int i = 2 ; i <= 1000;i++)
   {
        if(arr[i])
            continue;
 
        for(int j = i+ i; j <= 1000; j+= i)
           arr[j] = 1;
   }
}
 
int main()
{
    int N;
 
    scanf("%d",&N);
 
    PrimeNumSetting();
 
    int sum = 0;
    for(int i = 0;i<N;i++)
    {
        scanf("%d",&arr[0]);
 
        if(!arr[arr[0]])
           sum++;
    }
    printf("%d",sum);
 
    return 0;
}
 
cs

 

'Problem Solving' 카테고리의 다른 글

[BOJ 1629] 곱셈  (0) 2019.03.17
[BOJ 1964] 오각형, 오각형, 오각형…  (0) 2019.03.17
[BOJ 1331] 나이트투어  (0) 2019.03.10
[BOJ 1037] 약수  (0) 2019.03.10
[BOJ 2869] 달팽이는 올라가고 싶다  (0) 2019.03.03