Baekjoon/단계별로 풀어보기

[BOJ/백준] 1978번 소수 찾기 C++ 문제 풀이

728x90

단계별로 풀어보기 - 수학 2단계 - [1단계] 1978번

문제

문제 링크 : www.acmicpc.net/problem/1978

 

1978번: 소수 찾기

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

www.acmicpc.net

입력 복사 : 

4 1 3 5 7

 

풀이

소수1과 자기 자신으로만 나누어지는 1보다 큰 정수들을 말한다. ex) 2, 3, 5, 7, 11...

따라서 입력 받은 각 변수를 나누어떨어지게 할 수 있는 수가 2개(1과 자기 자신)일 때, 해당 변수를 소수라고 판단한다.

 

CODE

#include <iostream>
using namespace std;

int main() {
	int N, result = 0;
	int temp, cnt = 0;
	cin >> N;
	for (int i = 0; i < N; i++) {
		cin >> temp;
		for (int div = 1; div <= temp; div++) {
			if (temp%div == 0)
				cnt++;
		}
		if (cnt == 2)	//temp가 소수
			result++;
		cnt = 0;
	}
	cout << result << '\n';
}

 

결과

728x90