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

 

 

아이디어

정수 N이 있다면, 2~N-1까지의 수를 N에 나누고, 그 나머지가 0인 수가 하나라도 있다면 소수가 아닌 걸로 판별한다.

 

 

코드

#include <iostream>
#include <vector>
using namespace std;

bool isDec(int num) {
	bool result = true;
	if (num == 1) return false;
	for (int i = 2; i < num; i++) {
		if (num % i == 0) return false;
	}
	return result;
}

int main()
{
	int N;
	cin >> N;
	vector<int> v(N);
	for (int i = 0; i < N; i++) {
		cin >> v[i];
	}

	int cnt = 0;
	for (const int& i : v) {
		if (isDec(i)) {
			cnt++;
		}
	}
	cout << cnt << "\n";
}

 

 

 

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

백준 14889: 스타트와 링크 - X  (0) 2022.05.30
백준 1037: 약수  (0) 2022.05.26
백준 9095: 1, 2, 3 더하기  (0) 2022.02.09
백준 1182: 부분 수열의 합  (0) 2022.02.08
백준 6603 : 로또  (0) 2021.06.23

+ Recent posts