카테고리 없음

[BOJ]1978 :: 소수 찾기

쿠마쿠마34 2018. 6. 1. 23:10
반응형

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


n개의 숫자를 입력받아서 그 중 소수의 개수를 구해 출력해주는 문제입니다~


입력되는 숫자의 크기가 작기 때문에 그렇게 복잡한 소수찾기 알고리즘을 사용할 필요 없어서


그냥 정의 그대로 1과 자기자신이 아닌 수로 나누어지면 소수가 아닌 것으로 판단했습니다


1은 소수이기 때문에 따로 예외처리 해주었습니다



#include <iostream>
using namespace std;
bool find(int);
int main()
{
int n;
cin >> n;
int ans = 0;
while (n--)
{
int temp;
cin >> temp;
bool flag = find(temp);
if (flag)
ans++;
}
cout << ans << endl;
}
bool find(int n)
{
if (n == 1)
return false;
bool flag = true;
for (int i = 2; i < n; i++)
{
if (n%i == 0)
{
flag = false;
break;
}
}
return flag;
}

댓글로 질문 지적 해주세요 :)


반응형