sliver__

백준 - 소수찾기(1978) 본문

CS/알고리즘

백준 - 소수찾기(1978)

sliver__ 2021. 11. 18. 09:05
728x90

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

 

1978번: 소수 찾기

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

www.acmicpc.net

 

소수찾기

 

n개의 숫자만큼이 주어지고 

해당 숫자가 소수인지 판별하는 문제이다.

 

미리 1000까지의 수들 중 소수인지를 구하여 

소수인지 확인한다.

 

아래는 제출한 코드이다.

 

#include <iostream>
using namespace std;

int arr[1001];

void getPrime()
{
	arr[1] = 0;
	for (int i = 2; i*i < 1000; i++)
	{
		for (int j = i+i; j <= 1000; j += i)
		{
			if (arr[j] == 1) arr[j] = 0;
		}
	}
}
int main()
{
	int n, num, res = 0;
	cin >> n;
	for (int i = 0; i < 1001; ++i) arr[i] = 1;
	getPrime();
	for (int i = 0; i < n; ++i)
	{
		cin >> num;
		if (arr[num] == 1)res++;
	}
	cout << res;
}
728x90

'CS > 알고리즘' 카테고리의 다른 글

백준 - 소인수분해(11653)  (0) 2021.11.18
백준 - 소수(2581)  (0) 2021.11.18
백준 - Fly me to the Alpha Centauri(1011)  (0) 2021.11.17
백준 - 큰 수 A+B(10757)  (0) 2021.11.17
백준 - 부녀회장이 될테야(2775)  (0) 2021.11.17
Comments