https://www.acmicpc.net/problem/1978
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
입력받은 수들에서 소수의 개수를 출력하는 문제. 저번에 만든 에라토스테네스의 체를 이용하면 된다.
#include <stdio.h>
#include <stdbool.h>
int main () {
bool seive[1001] = {false, false};
for (int i = 2; i < 1001; i++) {
seive[i] = true;
}
for (int i = 2; i < 1001; i++) {
if (seive[i]) {
for (int p = 2; i*p < 1001; p++) {
seive[i*p] = false;
}
}
}
int n, cnt = 0;
scanf("%d", &n);
int arr[n];
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
for (int i = 0; i < n; i++) {
if (seive[arr[i]]) cnt++;
}
printf("%d", cnt);
return 0;
}
'coding_test > BAEKJOON' 카테고리의 다른 글
백준 2231번 C언어 풀이 (0) | 2021.08.25 |
---|---|
백준 4153번 C언어 풀이 (0) | 2021.08.24 |
백준 1929번 C언어 풀이 - 두번째 풀이 (0) | 2021.08.24 |
백준 1929번 C언어 풀이 (0) | 2021.08.23 |
백준 1259번 C언어 & Python3 풀이 (0) | 2021.08.23 |