티스토리 뷰

반응형

소수 찾기 성공

 
시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 128 MB 119888 56382 45406 47.165%

문제

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

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

출력

주어진 수들 중 소수의 개수를 출력한다.

예제 입력 1 복사

4
1 3 5 7

예제 출력 1 복사

3
#include <iostream>
#include <stdlib.h>
#include <string.h>

using namespace std;


bool sosu(int n)
{
	for (int i = 2; i < n; i++)
	{
		if (n % i == 0)
			return false;
		
			
	}
	return true;
}

int main(void)
{
	
	
	int n,cnt=0;
	int arr[1002];
	cin >> n;
	for (int i = 0; i < n; i++)
	{
		cin >> arr[i];
		if (sosu(arr[i]) == true&&arr[i]!=1)
		{
			cnt++;
		}
	}
	printf("%d", cnt);
	return 0;
	


}

 

 

1) 소수를 찾는 함수를 구현한다

하나라도 나눠 떨어지는 것이 있으면 false를 return

하나도 안 나눠 떨어지면 true 리턴

 

2) 1은 소수가 아니기에 소수판별에서 제외한다.

소수인 것은 cnt를 센다.

 

 

반응형

'프로그래밍 > 백준 문제풀이' 카테고리의 다른 글

백준 11653 소인수분해 C/C++  (0) 2022.06.25
백준 2581 소수 C/C++  (0) 2022.06.25
백준 10757 큰 수 A+B C/C++  (0) 2022.06.25
2839 설탕배탈(C/C++)  (0) 2022.06.24
백준 10250 ACM호텔 C/C++  (1) 2022.05.08
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함
반응형