문제설명
입출력 예제
개념
주어진 자연수 중 소수의 개수를 출력하는 문제다. 여기서 소수란 약수가 1과 자기 자신밖에 없는 수를 의미한다.
알고리즘
1부터 입력된 수까지 순회하며 나눠지는 수가 존재한다면 소수가 아니므로 break를 건 후 다음 반복으로 넘어가고, 나눠지는 수가 없다면 소수의 개수를 늘리는 식으로 접근하면 되는 간단한 문제다.
풀이
#include<iostream>
using namespace std;
int N, cnt;
int check;
int main()
{
cin >> N;
while (N--)
{
int num;
check = 0;
cin >> num;
for (int i = 1; i < num; i++)
{
if (num % i == 0 && i != 1)
break;
check++;
}
if (num - 1 == check && num != 1)
cnt++;
}
cout << cnt;
}
반응형
'Algorithm > 백준' 카테고리의 다른 글
[백준] 1316 with C++ (0) | 2023.02.18 |
---|---|
[백준] 2941 with C++ (0) | 2023.02.17 |
[백준] 4673 with C++ (0) | 2023.02.16 |
[백준] 2839 C++ (0) | 2023.01.24 |
[백준] 1110 더하기 사이클 C++ (0) | 2023.01.09 |